Проводной формат (HTTP) для AJAX JSON Запросы в разных структурах? - PullRequest
0 голосов
/ 03 марта 2010

Я пытаюсь выяснить более низкоуровневую информацию о HTTP-запросах, которые создаются различными JS / AJAX-структурами при отправке запросов JSON POST на веб-сервер. Я ищу наиболее важную информацию о следующих платформах (но информация о любых других заметных исключениях приветствуется): .net, jquery, prototype, DWR и MooTools.

Что я хочу знать, так это то, что, когда эти платформы выполняют вызовы различных «методов» на сервере, что (в HTTP-запросе) различает вызовы разных методов? До сих пор я видел следующее:

  1. URL-адрес различает вызовы методов, т. Е. «POST /app/s.svc/method1 HTTP / 1.1» и «POST /app/s.svc/method2 HTTP / 1.1» и т. Д.
  2. URL-адрес одинаков для разных вызовов методов, но заголовок HTTP различает вызовы методов, т. Е. «X-AjaxPro-Method: method1» и «X-AjaxPro-Method: method2» и т. Д.

Существуют ли другие примеры вызовов методов "мультиплексирования" для того же URL, кроме заголовков HTTP? Содержит ли сам JSON имя метода без указания в заголовках HTTP, как метод SOAP, который содержится только в SOAP: Body, без соответствующего заголовка «SOAPMethodName»? Есть ли другие случаи, которых у меня нет?

Спасибо за вашу помощь.

Ответы [ 2 ]

1 голос
/ 03 марта 2010

В HTTP вы не обращаетесь к методам, к которым обращаетесь ресурсам . Глядя на это с независимой от платформы точки зрения, HTTP-спецификация предлагает три основных метода, а именно GET, POST, PUT и DELETE для ресурса (скажем, http://example.com/users/2, который является пользователем с идентификатором 2) , Архитектурный стиль программного обеспечения, лежащий в основе этой идеи ресурсов и единого интерфейса этих четырех методов, называется REST .

Если вы следуете этому архитектурному стилю, есть много фреймворков, которые могут работать с ним, и он использует протокол HTTP, как и положено (отправка X-AjaxPro-Method в заголовке определенно не стандарт HTTP совместимый).

0 голосов
/ 17 января 2011

Хотя в настоящее время наблюдается тенденция к использованию REST поверх HTTP и RESTful, это похоже на то, что вы ищете для механизма RPC. Если это то направление, которое вы хотите, вам, вероятно, стоит взглянуть на JSON-RPC . Это механизм RPC, поэтому он гораздо ближе к SOAP или XML-RPC, чем REST.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...