RPC и документ
RPC против документа
RPC и стиль веб-служб в стиле документа. Язык описания - это два наиболее широко используемых термина в отношении веб-сервисов и протокола SOAP. Веб-службы часто описываются с использованием документов Web Services Description Language (WSDL). WSDL описывает поддерживаемые операции и сообщения веб-службы и связывает их с конкретным сетевым протоколом и форматом сообщений. Абстрактные определения определяются с использованием элементов типа «,», «message» и «portType». Конкретные спецификации описываются с использованием элементов «привязки» и «обслуживания». Каждый из этих элементов помещается внутри элемента «определения».
RPC и стиль документа отличаются стилями связывания, которые также называются стилями привязки SOAP. WSDL определяет стиль привязки как RPC или документ в зависимости от полезной нагрузки SOAP или структуры содержимого элемента. Стиль документа всегда является выбором по умолчанию, поскольку сообщение SOAP отправляется как один «документ» в элементе. Элемент стиля RPC должен следовать правилам, описанным в спецификации SOAP. Согласно правилам, он может состоять только из одного элемента, который назван после операции, а параметры интерпретируются как подэлементы основного элемента. Как RPC, так и стили документов принимаются большинством клиентов SOAP; однако использование одного над другим - это, в основном, личный выбор.
Атрибут use также помогает различать RPC и стили документов. Атрибут use описывает, как обе стили представлены в XML. Атрибут use описывает, закодированы ли части сообщений или сообщение следует определению схемы XML. Основываясь на выборе, существует четыре возможных сочетания как RPC, так и стилей документов; viz RPC / encoded, литерал RPC, документ / кодировка или документ / литерал. Не все из четырех комбинаций используются, и предпочтение одной комбинации над другой более личное.
Основное различие между стилями документов и RPC заключается в том, что в стиле документа клиент всегда отправляет параметры сервиса на сервер в формате простого XML-документа, а не в дискретном наборе значений параметров. Стиль документа слабо связан по сравнению с стилем RPC.
В стиле Document / Literal сообщение всегда может быть проверено с помощью любого механизма проверки XML. Содержимое внутри тела SOAP четко определено в схеме. В стиле RPC / literal переносимые данные трудно подтвердить с помощью сообщения SOAP. Стиль Document / Literal теряет название операции в SOAP-сообщении, тогда как в стиле RPC / литерале имя операции все еще существует в сообщении SOAP. Out из четырех различных комбинаций, широко используемые стили RPC / literal и Document / Literal.
Резюме:
1. В стиле документа сообщение SOAP отправляется как один документ, тогда как в
RPC, тело SOAP может содержать несколько элементов.
2. Стиль документа слабо связан, тогда как RPC тесно связан.
3. В стиле документа клиент отправляет параметры службы в простой формат XML
тогда как в стиле RPC параметры отправляются как дискретные значения.
4. Стиль Document / Literal теряет название операции в SOAP-сообщении, тогда как
стиль RPC / literal сохраняет имя операции в сообщении SOAP.
5. В стиле Document / Literal сообщения всегда могут быть проверены с использованием любого XML-документа
валидатор, тогда как в стиле RPC / literal переносимые данные трудно проверить
сообщение SOAP.