VofusWeb

Soap/Rest Api

REST и SOAP. Это уже давно стало проблемой. И действительно, это всего лишь два ответа на один и тот же вопрос: как получить доступ к сети услуги.

Однако выбрать одно из другого может быть на удивление сложно.

SOAP (простой протокол доступа к объектам) – это протокол доступа к службам, который существует уже давно. Первоначально разработанный Microsoft, SOAP не так прост, как аббревиатура предложил бы.

REST (передача репрезентативного состояния) — это еще один стандарт, созданный в ответ на недостатки SOAP. Он стремится исправить проблемы с SOAP и предоставить более простой способ доступа к веб-службам. 

А как насчет GraphQL?
Конечно же, GraphQL в последнее время произвел огромный фурор, о чем мы уже говорили. подробно в других статьях. Но это все еще не так стандартизировано, как REST и SOAP, поэтому в этой статье мы сосредоточимся только на них. два.

Как SOAP, так и REST имеют проблемы, которые необходимо учитывать при выборе протокола.

Сходства

Хотя SOAP и REST имеют сходство с протоколом HTTP, SOAP представляет собой более жесткий набор шаблонов обмена сообщениями, чем REST. Правила в SOAP важны, потому что мы не можем достичь какого-либо уровня стандартизации без них. REST как архитектурный стиль не требует обработки и, естественно, более гибкий. И SOAP, и REST полагаются на устоявшиеся правила, которые все согласились соблюдать в заинтересованность в обмене информацией.
 

Краткий обзор SOAP

SOAP использует исключительно XML для предоставления служб обмена сообщениями. Microsoft изначально разработала SOAP, чтобы заменить более старые технологии, которые плохо работают в Интернете, такие как Объектная модель распределенных компонентов (DCOM) и общий объектный запрос Брокерская архитектура (CORBA). Эти технологии терпят неудачу, потому что они полагаются при обмене двоичными сообщениями. Обмен XML-сообщениями, который использует SOAP, работает лучше через Интернет.

После первоначального выпуска Microsoft представила SOAP в Интернете. Engineering Task Force (IETF), где он был стандартизирован. МЫЛО предназначен для поддержки расширения, поэтому он имеет множество других аббревиатур и связанные с ним аббревиатуры, такие как WS-Addressing, WS-Policy, WS-Security, WS-Federation, WS-ReliableMessaging, WS-Координация, WS-AtomicTransaction и WS-RemotePortlets. На самом деле, вы можете найти полный список этих стандартов в стандартах веб-сервисов.

Дело в том, что SOAP обладает высокой расширяемостью, но вы используете только штук, необходимых для конкретной задачи. Например, при использовании публичного бесплатный веб-сервис для всех, у вас действительно нет очень нужен WS-Security.
 

Сложность зависит от языка программирования
XML, используемый для отправки запросов и получения ответов в SOAP, может стать чрезвычайно сложный. В некоторых языках программирования вам нужно построить эти запросы вручную, что становится проблематичным, поскольку SOAP нетерпим к ошибкам. Однако другие языки могут использовать ярлыки, которые МЫЛО обеспечивает. Они могут помочь вам сократить усилия, необходимые для создания запрос и проанализировать ответ. На самом деле при работе с .NET языки, вы даже не видите XML.

Частью магии является язык описания веб-служб (WSDL). Это еще один файл, связанный с SOAP. Он обеспечивает определение того, как работает веб-сервис, чтобы при создании ссылаясь на него, IDE может полностью автоматизировать процесс. Так что сложность использования SOAP в значительной степени зависит от языка, на котором вы использовать.
 

Встроенная обработка ошибок
Одной из наиболее важных функций SOAP является встроенная обработка ошибок. Если возникла проблема с вашим запросом, ответ содержит ошибку информацию, которую вы можете использовать для решения проблемы. Учитывая, что вы можете не владеете веб-службой, эта особенность чрезвычайно важна; в противном случае вам оставалось бы гадать, почему что-то не работает. сообщения об ошибках даже предоставляют стандартизированные коды, так что это возможно чтобы автоматизировать некоторые задачи обработки ошибок в вашем коде.

Интересная функция SOAP заключается в том, что вам не обязательно обязательно использовать ее с HTTP-транспортом. Существует актуальная спецификация для использования SOAP по протоколу Simple Mail Transfer Protocol. (SMTP), и нет никаких причин, по которым вы не можете использовать его вместо других транспорты. Фактически, разработчики некоторых языков, таких как Python и PHP, делают именно это.

Soap/Rest Api
Форма запроса

Услуги

Похожие услуги

Новостная рассылка

Подпишитесь, чтобы получать информацию о последних новостях и предложениях