123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221 |
- In der momentanen Version gibt der POST-Request auf "/getshm" eine lineare
- Tabelle von Werten zurück. Der Request hat entweder das gewohnte Format, d.
- h. es wird ein Request-Objetkt an den Server gesendet, oder (neu!) es kann
- auch ein Array aus Request-Objekten gesendet werden.
- /////////////////////////////////////////////////////////////////////////////
- Beispiel Objekt:
- {
- "path": "/Anlage_Allgemein_Konfig_Daten/K_Anlagen_Name",
- "cookie": "idValues1"
- }
- Beispiel Array:
- [
- {
- "path": "/Anlage_Allgemein_Konfig_Daten/K_Anlagen_Name",
- "cookie": "idValues1"
- },
- {
- "path": "/Anlage_Allgemein_Konfig_Daten/K_Email_Adresse_An[125]",
- "cookie": "idValues2"
- },
- {
- "path": "/Anlage_Allgemein_Konfig_Daten/PID_Regler_P",
- "cookie": "idValues3"
- }
- ]
- /////////////////////////////////////////////////////////////////////////////
- Antwort auf Objekt-Request:
- {
- "uuid": "6f58640d-9fb4-44e4-b2d3-a5e3125f9e26",
- "request": [
- {
- "path": "/Anlage_Allgemein_Konfig_Daten/K_Anlagen_Name",
- "cookie": "idValues1"
- }
- ],
- "response": [
- {
- "responseType": 0,
- "requestIndex": 0,
- "valName": "K_Anlagen_Name",
- "valType": 2,
- "path": "/Anlage_Allgemein_Konfig_Daten/K_Anlagen_Name",
- "index": -1,
- "value": "Monty Python's Flyin"
- }
- ]
- }
- Antwort auf Array-Request:
- {
- "uuid": "6f58640d-9fb4-44e4-b2d3-a5e3125f9e26",
- "request": [
- {
- "path": "/Anlage_Allgemein_Konfig_Daten/K_Anlagen_Name",
- "cookie": "idValues1"
- },
- {
- "path": "/Anlage_Allgemein_Konfig_Daten/K_Email_Adresse_An[125]",
- "cookie": "idValues2"
- },
- {
- "path": "/Anlage_Allgemein_Konfig_Daten/PID_Regler_P",
- "cookie": "idValues3"
- }
- ],
- "response": [
- {
- "responseType": 0,
- "requestIndex": 0,
- "valName": "K_Anlagen_Name",
- "valType": 2,
- "path": "/Anlage_Allgemein_Konfig_Daten/K_Anlagen_Name",
- "index": -1,
- "value": "Monty Python's Flyin"
- },
- {
- "responseType": 1,
- "requestIndex": 1,
- "message": "Invalid path!",
- "code": -1,
- "path": "/Anlage_Allgemein_Konfig_Daten/K_Email_Adresse_An[125]"
- },
- {
- "responseType": 0,
- "requestIndex": 2,
- "valName": "PID_Regler_P",
- "valType": 4,
- "path": "/Anlage_Allgemein_Konfig_Daten/PID_Regler_P",
- "index": -1,
- "value": 123.456
- }
- ]
- }
- Zu beachten ist, dass die Elemente "request" und "response" in beiden Fällen
- Arrays sind, im Fall eines Einzel-Requests mit nur einem Element!
- Die Objekte im response-Array können 2 unterschiedliche Typen sein.
- Unterscheiden lässt sich der Typ am Member "responseType", das in jedem Fall
- vorhanden ist.
- responseType : 0 => es handelt sich um ein Wert-Objekt, das die gewünschte
- Variable zurückgibt.
- responseType : 1 => es handelt sich um ein Status-Objekt, das im Fehlerfall
- zurückgegeben wird.
- Das Wert-Objekt hat nun zu bereits bekannten Members noch folgndes:
- requestIndex: gibt den Index des korrespondierenden Requests im
- request-Array an.
- Das Status-Objekt enthält nun ebenfalls die Members requestIndex und path.
- Somit enthalten beide Objekte immer folgende Members:
- responseType
- requestIndex
- path
- /////////////////////////////////////////////////////////////////////////////
- Dieser Aufbau gilt sinngemäss nun auch für "/setshm"! Hier werden zwar
- keine Werte zurückgegeben, d. h. "responseType" ist immer 1, aber die
- Status-Objekte sind nun zwecks Konsistenz auch in das response-Array
- gewandert und haben das selbe Format! Auch hier kann der Request entweder
- ein Objekt oder ein Array aus diesen Objekten sein!
- Beispiel Request:
- [
- {
- "path": "/Anlage_Allgemein_Konfig_Daten/K_Anlagen_Name",
- "value": "Monty Python's Flying Circus",
- "cookie": "idValues1"
- },
- {
- "path": "/Anlage_Allgemein_Konfig_Daten/K_Email_Adresse_An[125]",
- "value": "Blah blah bluh!",
- "cookie": "idValues2"
- },
- {
- "path": "/Anlage_Allgemein_Konfig_Daten/PID_Regler_P",
- "value": 123.456,
- "cookie": "idValues3"
- },
- {
- "path": "/Stall_Konfig_Daten[3]",
- "value": 1,
- "cookie": "idValues4"
- }
- ]
- Beispiel Response:
- {
- "uuid": "6f58640d-9fb4-44e4-b2d3-a5e3125f9e26",
- "request": [
- {
- "path": "/Anlage_Allgemein_Konfig_Daten/K_Anlagen_Name",
- "cookie": "idValues1",
- "value": "Monty Python's Flying Circus"
- },
- {
- "path": "/Anlage_Allgemein_Konfig_Daten/K_Email_Adresse_An[125]",
- "cookie": "idValues2",
- "value": "Blah blah bluh!"
- },
- {
- "path": "/Anlage_Allgemein_Konfig_Daten/PID_Regler_P",
- "cookie": "idValues3",
- "value": 123.456
- },
- {
- "path": "/Stall_Konfig_Daten[3]",
- "cookie": "idValues4",
- "value": 1
- }
- ],
- "response": [
- {
- "message": "",
- "responseType": 1,
- "requestIndex": 0,
- "code": 0,
- "path": "/Anlage_Allgemein_Konfig_Daten/K_Anlagen_Name"
- },
- {
- "message": "Invalid path!",
- "responseType": 1,
- "requestIndex": 1,
- "code": -1,
- "path": "/Anlage_Allgemein_Konfig_Daten/K_Email_Adresse_An[125]"
- },
- {
- "message": "",
- "responseType": 1,
- "requestIndex": 2,
- "code": 0,
- "path": "/Anlage_Allgemein_Konfig_Daten/PID_Regler_P"
- },
- {
- "message": "Cannot assign a value to an object!",
- "responseType": 1,
- "requestIndex": 3,
- "code": -1,
- "path": "/Stall_Konfig_Daten[3]"
- }
- ]
- }
- /////////////////////////////////////////////////////////////////////////////
- Achtung: HTTP-Statuscodes != 200 werden jetzt nur mehr zurückgegeben, wenn
- der Request fehlerhaft ist. Bei einem ungültigen Pfad gibt der Server 200
- zurück und liefert das entsprechende Status-Objekt!
|