Sonntag, 29. Dezember 2013

HTTP-POST zu ASP.net Web API mit Arduino

Web APIs (auch REST-Services genannt) sind in der heutigen Zeit nicht mehr wegzudenken. (siehe auch wie Web APIs helfen Wertschöpfungsketten zu verändern). Ein Arduino Uno ist – mit Hilfe vom geeigneten Shield – in der Lage mit einem Web API zu kommunizieren. Für mein aktuelles Projekt war es von Nöten, dass das Arduino an einen ASP.net Web API 2 REST-Service einen POST-Request schicken kann. Anbei eine Anleitung, welche anderen Personen mit dieser Herausforderung helfen kann.

Benötigte Bauteile

Folgende Bauteile wurden für den Arduino-Teil benötigt:

1x Arduino Uno:

1x Arduino Ethernet Shield:

Kombiniert sieht das dann so aus:

Arduino-Sketch

Der Arduino-Sketch sieht wie folgt aus und macht in groben Zügen folgendes.

  1. IP-Adresse vom DHCP-Server beziehen. Falls DHCP-Server nicht funktioniert, verwendet Arduino die IP-Adresse 192.168.1.177

  2. Prüfen ob der Server wo der REST-Service läuft erreichbar ist (in meinem Fall 192.168.1.40:8090)

  3. Alle 30 Sekunden einen POST-Request auf http://192.168.1.40:8090/api/mail mit der Message "bla" senden



PLATZHALTER HTML FORMEL



ASP.net Web API 2 Code

Der ASP.net Web API 2 Service ist hier nur Dummy-Haft dargestellt. Erreichbar ist die entsprechende Service-Methode mittels einem POST-Request unter http://192.168.1.40:8090/api/mail



PLATZHALTER HTML FORMEL



Autor

Reto Gurtner

Consulting, Geschäftsführer & Founder