Встраивание SOAP-клиента в плагин WordPress?

15 апр. 2011 г., 07:03:52
Просмотры: 27.9K
Голосов: 16

Какой лучший способ встроить SOAP-клиент в плагин WordPress, который будет распространяться через репозиторий плагинов WordPress? Что лучше использовать?

Более того, почему вы рекомендуете именно этот вариант? И каковы плюсы и минусы каждого? "Бонусные очки" за реальный опыт использования SOAP-клиента в широко распространяемом плагине. Есть ли какие-либо различия между вызовом SOAP-сервера на .NET, Java или какого-либо другого стека SOAP-сервера?

Отмечу, что этот вопрос связан с вопросом "Подводные камни при распространении плагинов, обращающихся к SOAP веб-сервисам?", и я также делаю его общедоступной википедией.

Обновление

Вот несколько потенциально полезных ссылок для тех, кто исследует этот же вопрос:

0
Все ответы на вопрос 1
2

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

Я, должно быть, раньше работал с некоторыми из этих библиотек, но уже не помню, с какими именно. Вообще, я предпочитаю встроенные модули PHP, а не внешний код, потому что их чаще обновляют, и они не требуют дополнительных накладных расходов (иногда приходится загружать целый фреймворк, чтобы использовать одну его часть).

Может быть, стоит создать отдельный ответ для каждой библиотеки, чтобы можно было добавить их плюсы и минусы. Или этот более общий вопрос лучше подходит для "настоящего" Stack Overflow?

26 апр. 2011 г. 12:36:42
Комментарии

Спасибо за ответ. Я согласен, что абстрагирование было бы полезным, но не сразу. Думаю, что сначала нужно набраться достаточного опыта работы с несколькими библиотеками, иначе есть риск нарушить принцип YAGNI. Я спрашивал на StackOverflow, но там обсуждают в абстрактных терминах и не учитывают ограничения, которые должны учитывать разработчики плагинов WordPress. Кстати, там не получил ничего полезного. Что я действительно хочу, так это чтобы все клиенты понимали, что они напрашиваются на проблемы, выбирая SOAP вместо RESTful веб-сервисов.

MikeSchinkel MikeSchinkel
27 апр. 2011 г. 08:24:51

@Mike: Действительно, важное отличие в том, что это для твоего собственного плагина, а не API, которое будут расширять другие? Тогда у тебя действительно больше свободы изменить внутренний код и абстрагировать позже.

Jan Fabry Jan Fabry
27 апр. 2011 г. 09:50:26