2014-02-03 2 views
1

Пройдя через различные учебники о различиях между закодированным vs literal, я обнаружил, что литерал является рекомендуемым вариантом; в учебниках также приводятся различные примеры простых сервисов, в которых логический выбор является логическим; но я начал задаваться вопросом, почему вначале есть закодированный вариант? Это что-то, что было добавлено первоначально в спецификацию и позже стало устаревшим, разве это только для обратной совместимости?RPC/Document Закодированные реальные примеры

Есть ли какие-либо примеры реального мира, где вы бы выбрали кодировку буквально?

ответ

2

Я думаю, что закодированный стиль был создан для отражения структур данных, которые являются общими для современных языков программирования, таких как массивы, карты и т. Д. Он отлично работает, пока вы не попытаетесь вручную создать файл WSDL, где вы должны применить все эти Правила SOAP-ENC. Это было важно для меня, потому что я сделал некоторые функции проверки на основе XML-схемы. Кроме того, намного проще отлаживать необработанные XML-сообщения в виде документа/литерала.

Я могу порекомендовать вам сравнить две версии польского Allegro WebAPI. Первый использует RPC и закодированный стиль: https://webapi.allegro.pl/uploader.php?wsdl

Чтобы увидеть другой, просто замените «uploader» на «service» в URL.

Здесь у вас есть документ/литерал описано в Allegro: http://allegro.pl/webapi/tutorials.php/tutorial/id,261

Я использую документ/литерал сейчас в моих SOAP услуг, и это гораздо легче для меня, чтобы создать WSDL точно. Обработка запросов SOAP в PHP немного сложнее, но я привык к этому быстро.

+0

Интересно. Код encodingStyle указывает на URI (ы), где описывается метод кодирования, есть ли какой-либо формат/стандарт для определения метода кодирования, указываемого URI? – Rnet

+1

Я только что прочитал [статью о цели SOAP-кодирования] (http://msdn.microsoft.com/en-us/library/ms995710.aspx). Как вы увидите, статья составляет 12 лет, и даже к тому времени SOAP-кодирование считалось слишком сложным и бесполезным. –

Смежные вопросы