При создании веб-службы "Restful" можно использовать стандартный синтаксис http get & http post?

Мы работаем в офисе, используя Oracle APEX для создания некоторых веб-сервисов. После того, как мы бились головой об стену, мы наконец-то поняли, что термины get & post, когда речь идет об услугах RESTful, не совпадают со стандартными HTTP.

Нам нужно будет создать два типа веб-сервисов;

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

Во втором случае внешнее приложение создает запись из 30 полей, которую метод должен вставить в БД.

В обычном веб-приложении мы в обоих случаях обычно отправляем данные http на страницу cgi (asp, aspx, pl...), которая анализирует поля и делает то, что нужно сделать.

Поскольку мы написали новое приложение в APEX и хотели бы присоединиться к концу 20-го века, мы решили использовать веб-сервис на стороне провайдера. Потребителем будет AS3/flex/flash.

Можем ли мы по-прежнему использовать традиционную методологию http post и / или http get для определения пар имя = данные и отправлять их в веб-службу?

До сих пор мы видели, что передаваемые данные (по крайней мере, в APEX Restful GET) должны быть позиционными, а не парами имя = данные.

Я предполагаю, что первый вопрос заключается в том, где мы можем получить некоторые основные понятия о том, как передавать данные, используя "RESTful" get & post? Было бы хорошо, если бы что-то было направлено на интернет-сервис.

Другой вопрос: если можно использовать методологию HTTP get/post, как это будет сделано в Oracle APEX v5.0?

1 ответ

В вашем посте много вопросов, возможно, если вы сузите их до конкретной проблемы, вы получите лучшие ответы. Я использовал сервисы RESTful с APEX 4.2, 5, 5.1, и они работают просто отлично.

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

Это типичный запрос GET. Вы передаете параметры (я обычно передаю их как часть URL), используете их в запросе и возвращаете значения. Вы даже можете передать их в PL/SQL-блок, выполнить любую необходимую обработку, а затем вернуть результаты.

Во втором случае внешнее приложение создает запись из 30 полей, которую метод должен вставить в БД.

Это типичный запрос POST (хотя вы все еще можете использовать GET, но не рекомендуется). Формат того, как данные отправляются, важен. Я сделал это, используя формат JSON, и получил как переменную связывания :body в конце APEX. В APEX вы можете разобрать его и вставить в таблицу.

Несколько ресурсов могут помочь вам начать работу: http://www.oracle.com/webfolder/technetwork/tutorials/obe/db/apex/r50/Restful%20Services/restful_services.html

Это особенно полезно для POST:
https://ruepprich.wordpress.com/2016/03/22/apex-rest-post/

Другие вопросы по тегам