Ich verwende Delphi XE2 zum Schreiben von DataSnap REST-Dienst. Ich stelle fest, dass der REST-URI in DataSnap streng diesem Format folgen muss (siehe aquí ):
http://my.site.com/datasnap/rest/URIClassName/URIMethodName[/inputParameter]*
Ein bekanntes Beispiel ist die vom DataSnap-Server-Assistenten erstellte Beispielmethode:
http://my.site.com/datasnap/rest/TServerMethods1/ReverseString/ABC
Es gibt 2 gängige Möglichkeiten, Parameter in URI zu liefern:
- Parameter Pfadsegment: /TServerMethods1/ReverseString/ABC
- Abfrage-String-Parameter: /TServerMethods1/customers?name=bill
Der Pfadsegmentparameter URI wird definitiv von DataSnap REST unterstützt. Unterstützt DataSnap REST auch Abfrage-String-Parameter URI?
Ich habe das folgende REST-URI-Beispiel und fand es scheint unmöglich, es mit aktuellen DataSnap REST-Bibliothek arbeiten:
-
/Kunden/A1234
Kundenobjekt mit der ID A1234 zurückgeben
-
/Kunden/A1234.xml
Rückgabe des Kundenobjekts mit der ID A1234 im XML-Format
-
/Kunden/A1234.json
Kundenobjekt der ID A1234 im json-Format zurückgeben
-
/Kunden/A1234.html
Rückgabe des Kundenobjekts mit der ID A1234 im html-Format
-
/customers?name=Rechnung
gibt eine Liste von Kunden zurück, deren Name Bill enthält