Я использую Delphi XE2 для записи службы DataSnap REST. Я замечаю, что URI REST в DataSnap должен строго следовать этому формату (см. здесь):
http://my.site.com/datasnap/rest/URIClassName/URIMethodName[/inputParameter]*
Известный пример - это метод создания образца с помощью мастера сервера DataSnap:
http://my.site.com/datasnap/rest/TServerMethods1/ReverseString/ABC
Существует два распространенных способа подачи параметров в URI:
- Параметр сегмента пути:/TServerMethods1/ReverseString/ABC
- Параметр Query String:/TServerMethods1/customers? name = bill
Параметр URI параметра пути определен определенно поддерживается DataSnap REST. Поддерживается ли поддержка параметров URI строки в DataSnap REST?
У меня есть следующий пример URI REST и нашел невозможным заставить его работать с текущей библиотекой REST DataSnap:
-
/клиентов/A1234
вернуть объект клиента ID A1234
-
/customers/A1234.xml
вернуть объект клиента ID A1234 в формате XML
-
/customers/A1234.json
вернуть объект клиента ID A1234 в формате json
-
/customers/A1234.html
вернуть объект клиента ID A1234 в формате html
-
/клиенты? Имя = Bill
возвращает список клиентов, чье имя содержит Билл