Dieser Funktionsbaustein stellt Requests an einen Webserver über eine REST API. Der Baustein kann die Request-Arten GET, PUT und POST durchführen. Auf diese wird später näher eingegangen.
Der Baustein basiert auf den TCP Bausteinen der Bibliothek "SYSTEM2_PCC03_40bd03". Man muss die IP-Adresse und den Port des anzufragenden Webservers angeben. Zusätzlich gibt man über einen String noch an, welche Request-Art man verwenden will.
Wichtig ist auch die Angabe des anzufragenden Pfades am Server. Der Content-Type kann angegeben werden, falls nichts angegeben ist, wird "application/json" als Default eingetragen. Für den Fall eines PUT oder POST Request muss dessen Body in
einem BYTE_4096_BMARRAY in JSON Format angegeben werden. Dafür kann der Baustein "TB_ArrayToJson" verwendet werden. Über einen Execute kann nach Angabe all dieser Eingangsparameter der Request durchgeführt werden. Die empfangenen Daten
werden ebenfalls in ein BYTE_4096_BMARRAY geschrieben. Falls diese im JSON Format von einem Server stammen, können Sie über den Baustein "TB_JsonToArray" diese in ein leserliches Format bringen.
| Empfohlene Task: |
Zyklisch, Standard |
| Verwendete Bibliotheken: |
SYSTEM2_PCC03_40bd03 BM_TYPES_40bd04 oder höher TECH_TYPES_40bd15 oder höher |
Allgemeine Beschreibung
Ein-/Ausgangsparameter
Eingangsparameter
| Bezeichnung: |
Datentyp: |
Beschreibung: |
| x_Execute |
BOOL |
Ausführen des Funktionsblocks |
| s_RequestMethod |
STRING |
Festlegen der Request Methode (GET, PUT, POST) |
| s_IP |
STRING |
IP-Adresse des Gerätes auf dem der Webservers, mit dem sich verbunden werden soll, läuft |
| ui_Port |
UINT |
Port auf dem der Webserver läuft |
| s_Path |
STRING |
Pfad des Servers, an den der Request gestellt wird (Bsp.: /data) |
| s_ContentType |
STRING |
Art der verschickten / empfangenen Daten (Default: application/json) |
| a_Body |
BYTE_4096_BMARRAY |
Byte Array, das die zu versendeten Daten enthält (JSON Form umgewandelt in Bytes) |
Ausgangsparameter
| Bezeichnung: |
Datentyp: |
Beschreibung: |
| x_Busy |
BOOL |
Funktion wird ausgeführt |
| x_Done |
BOOL |
Funktion ist fertig |
| x_Error |
BOOL |
TRUE: Error |
| s_ErrorInfo |
STRING |
gibt Informationen zum aufgetretenen Fehler an |
| w_ErrorID |
WORD |
Error ID gemäß der Motion Control Error Liste |
| s_StatusReceived |
STRING |
Status des gestellten Requests (Bsp.: 200 OK) |
| a_DataOutput |
BYTE_4096_BMARRAY |
Empfangene Daten in einem BYTE_4096_BMARRAY in JSON Form |