Сведения о вопросе

PASHA

16:03, 1st July, 2020

Теги

web-services   rest   wsdl    

Веб-службы на основе документов или RPC

Просмотров: 482   Ответов: 3

Я нутром чувствую, что веб-сервисы на основе документов предпочтительнее на практике - это опыт других людей? Их легче поддерживать? (Я заметил, что SharePoint использует любой для "document type" в своем интерфейсе WSDL, я думаю, что это делает его документальным).

Кроме того-теперь люди предлагают услуги типа WSDL и Rest для одной и той же функциональности? WSDL популярен для генерации кода, но для таких интерфейсов, как PHP и Rails, они, похоже, предпочитают rest.



  Сведения об ответе

SKY

18:03, 1st July, 2020

Документ против RPC-это только вопрос, если вы используете SOAP веб-служб, которые требуют описания службы (WSDL ). RESTful веб-службы не используют WSDL, потому что сервис не может быть описан им, и ощущение такое, что REST проще и легче понять. Некоторые люди предложили WADL в качестве способа описания REST услуг.

Такие языки, как Python, Ruby и PHP, облегчают работу с REST. WSDL используется для генерации кода C# (прокси веб-службы), который можно легко вызвать из статического языка. Это происходит при добавлении ссылки на службу или веб-ссылки в Visual Studio.

Предоставляете ли Вы услуги SOAP или REST, зависит от вашего контингента пользователей. От того, будут ли эти услуги использоваться через интернет или только внутри вашей организации, зависит ваш выбор. SOAP может иметь некоторые функции (WS-* стандартов), которые хорошо работают для B2B или внутреннего использования, но плохо для интернет-сервиса.

Документ / литерал против RPC для SOAP служб описаны в этой статье IBM DevelopWorks . Документ / литерал обычно считается лучшим для использования с точки зрения совместимости (от Java до .NET и т.д.). Что касается того, легче ли его поддерживать, то это зависит от ваших обстоятельств. Мое личное мнение заключается в том, что люди склонны делать этот материал более сложным, чем он должен быть, и более простой подход REST превосходит его.


  Сведения об ответе

prince

18:03, 1st July, 2020

Как уже упоминалось, лучше выбрать литерал документа над RPC кодированным, когда это возможно. Это правда, что старые библиотеки java (Axis1, Glue и другие доисторические вещи) поддерживают только кодировку RPC, однако в современных библиотеках Java SOAP она просто не поддерживается (e.x. AXIS2, XFire, CXF). Поэтому старайтесь выставлять RPC кодированный сервис только в том случае, если вы знаете, что вам нужно иметь дело с потребителем, который не может сделать лучше. Но опять же, возможно, просто XML RPC может помочь для этих устаревших реализаций.


  Сведения об ответе

ЯЯ__4

18:03, 1st July, 2020

Ответ BiranLy превосходен. Я просто хотел бы добавить, что document-vs-RPC может также сводиться к вопросам реализации. Мы обнаружили, что Microsoft предпочитает документы, в то время как наши библиотеки на базе Java были основаны на RPC. Что бы вы ни выбрали, убедитесь, что вы знаете, что другие потенциальные клиенты будут предполагать также.


Ответить на вопрос

Чтобы ответить на вопрос вам нужно войти в систему или зарегистрироваться