Собственно, первое, что я хотел бы сделать, это "действительно ли мне нужен SOAP / XMl?".
В частности:
- WSDL не является почти кроссплатформенным, как это предлагается; очень легко получить случаи, которые не работают должным образом (ранее на этой неделе был один из них, посвященный PayPal)
- XML читается человеком ... Но в результате он относительно медленный и раздутый
Существуют и другие способы совместного использования определения - например, мы все отлично справляемся с с помощью документа API, в котором говорится, что «этот API возвращает JSON в этой форме {...}». WSDL в основном , кажется, помогает разработчикам перетаскивания; из которых я не один.
Поэтому я предлагаю взглянуть на более простые (думаю, YAGNI) протоколы. Что касается полезной нагрузки, я большой поклонник protobuf, который намеренно является более простой схемой и, следовательно, допускает гораздо меньшую неопределенность в отношении того, что может / не может быть обработано различными реализациями, и в то же время охватывает все разумные варианты использования. Это также очень эффективный или оба CPU / пропускная способность. Очень переносимый и имеет язык определения схемы (.proto) для определения данных, но MUCH проще, чем WSDL. Шок ужас! Он не читается человеком ... Ну, для этого есть инструменты :) зачем навязывать нам недельные недочеты и медленные модули на основе плоти в наших API?