DelphiXE2を使用してDataSnapRESTサービスを記述しています。DataSnapのRESTURIは、厳密にこの形式に従う必要があることに気付きました(ここを参照)。
http://my.site.com/datasnap/rest/URIClassName/URIMethodName[/inputParameter]*
有名な例は、DataSnapサーバーウィザードによって作成されたサンプルメソッドです。
http://my.site.com/datasnap/rest/TServerMethods1/ReverseString/ABC
URIでパラメータを指定する一般的な方法は2つあります。
- パスセグメントパラメータ:/ TServerMethods1 / ReverseString / ABC
- クエリ文字列パラメータ:/ TServerMethods1 / Customers?name = bill
パスセグメントパラメータURIは、DataSnapRESTによって確実にサポートされます。クエリ文字列パラメーターはDataSnapRESTでもURIをサポートしていますか?
次のRESTURIの例がありますが、現在のDataSnapRESTライブラリで機能させることは不可能のようです。
/ Customers / A1234
IDA1234の顧客オブジェクトを返します
/customers/A1234.xml
IDA1234の顧客オブジェクトをXML形式で返します
/customers/A1234.json
IDA1234の顧客オブジェクトをjson形式で返します
/customers/A1234.html
IDA1234の顧客オブジェクトをhtml形式で返します
/ customers?name = Bill
名前にBillが含まれている顧客のリストを返す