REST сопоставление URI переопределения данных - PullRequest
3 голосов
/ 22 ноября 2011

Я написал небольшой REST-сервер с набором данных REST в delphi XE2. Существует стандартное сопоставление между методами HTTP (POST, PUT и т. Д.) И функциями, определенными в delphi, это выполняется компонентом delphi.

Эта вики-запись описывает сопоставление URI, но также отмечает, что сопоставление по умолчанию может быть переопределено программистом.

Шаблон отображения может быть переопределен. Пользователь может переопределить сопоставление для каждого типа на основе имени класса и параметров имени метода.

Но я не нашел объяснения, как переопределить отображение.

Как я могу изменить отображение по умолчанию?

Ответы [ 2 ]

2 голосов
/ 21 декабря 2011

У компонента TDSHTTPService есть события, в которых вы можете указать сопоставление для каждого типа. Эти события называются RESTMethodNameMapDELETE, RESTMethodNameMapGET, RESTMethodNameMapPOST и RESTMethodNameMapPUT.

Это также объясняется в белой книге о REST Марко Канту, которая многое объясняет о REST и Datasnap.

1 голос
/ 03 октября 2012

Мне было интересно то же самое, и я провел несколько экспериментов. Кажется, что хотя бы частично возможно контролировать URL. В частности, я попытался изменить часть имени класса URL-адреса.

По сути, если вы используете потомок TComponent, вы можете назвать класс как угодно. Это не работает, если вы выходите из TDataModule, хотя. В этом случае вы можете создать и псевдоним класса, который вы можете назвать то, что вы хотите, который зависит от вашего TDataModule.

Вам нужно выполнить некоторую очистку в привязке клиента при попытке привязки к этому, но, похоже, это работает, по крайней мере, для простых тестов.

Подробнее на форумах Embarcadero.

https://forums.embarcadero.com/thread.jspa?threadID=77624&tstart=0

...