Я читал где-то здесь, в stackoverflow, что использование NuSoap не является хорошей идеей и ее мертвой. Если да, то каково наилучшее возможное решение для создания файлов WSDL. Я был просто nusoap только для создания файлов wsdl, и я никогда не получал работу webserviceИспользует PHP NuSOAP плохую идею?
ответ
Если вы работаете с PHP4, это может быть ваша единственная альтернатива.
С помощью PHP5 вы можете использовать Zend Soap. http://framework.zend.com/manual/en/
Я использую Nusoap с php 5.2.5. Отлично работает для меня. Но я никогда не тестировал его с более высокой скоростью.
NuSOAP больше не разрабатывается и не использовался какое-то время.
Я рассмотрел большинство вариантов PHP Soap и решил установить Zend_Soap_Server, в частности, из-за его компонента AutoDiscovery.
Главное в AutoDiscovery заключается в том, что WSDL генерируется из докблоков в вашем коде. Поэтому, пока вы выполняете правильные соглашения, компонент будет создавать хорошо сформированный WSDL для вас.
Если вы не хотите использовать фреймворк, вы можете просто включить файлы Server.php, AutoDiscover.php и Wsdl.php. Я делаю это так:
require_once 'Zend/Loader.php';
require_once "Zend/Loader/Autoloader.php";
$autoloader = Zend_Loader_Autoloader::getInstance();
Zend_Loader::loadClass('Zend_Soap_Server');
Zend_Loader::loadClass('Zend_Soap_AutoDiscover');
Zend_Loader::loadClass('Zend_Soap_Wsdl');
Стоит также помнить, что в одиночку AutoDiscovery не является сервером SOAP, он просто создает свой WSDL. Поэтому теоретически вы могли бы использовать его для создания WSDL, но использовать другой SOAP-сервер, если хотите, например, собственный PHP-файл (который не создает WSDL). Однако, поскольку вы загрузите Zend Soap Server, кажется немного расточительным, чтобы не использовать его IMO.
Я согласен с вами. В то же время в php 5 есть встроенная поддержка для написания мыльных серверов и клиентов с поддержкой спецификаций SOAP 1.1 и SOAP 1.2 и WSDL 1.1 нет возможности автоматически генерировать wsdl-документ, если вы попробуете? wsdl на вашем сервере, который он утверждает: «SOAP-ENV: генерация ServerWSDL еще не поддерживается». – sandino
Точно так же, как MacMan, я использую php 5.2.17, и он работает отлично, легко, что родной PHP SOAP, я думаю.
- 1. Использует ли оператор @ (at) плохую идею?
- 2. Использует CROSS JOIN здесь плохую идею?
- 3. Использует хранимую процедуру, такую плохую идею?
- 4. Использует несколько PHP включает в себя плохую идею?
- 5. Устанавливает set_time_limit (0) плохую идею?
- 6. В модели Rails ActiveRecord использует after_initialize callbacks очень плохую идею?
- 7. Увеличивает `max_hint_window_in_ms` до дней плохую идею?
- 8. Перенаправляет http на https плохую идею?
- 9. Есть -fPIC всегда на плохую идею?
- 10. Вложенные Try/Catch блокируют плохую идею?
- 11. Использование слишком большого количества PHP включает в себя плохую идею?
- 12. Использует «вне» плохую практику
- 13. Использует плагины плохую практику?
- 14. Устанавливает session.gc_probability и session.gc_divisor равным 100% плохую идею?
- 15. Использует много фрагментов плохую практику?
- 16. Использует «jquery-latest.min.js» плохую практику?
- 17. Python: Проводит ли основной класс другим классам плохую идею?
- 18. Устанавливает ли свойство в пользовательском getter хорошую или плохую идею?
- 19. Загружает динамические javascript и файлы CSS в плохую идею?
- 20. Добавляет индексы на SQL Server когда-либо плохую идею?
- 21. Почему логика и маршрутизация через catch блокируют плохую идею?
- 22. Когда эта блокировка-то-блокировка снова реорганизует плохую идею?
- 23. Имеет ли несколько SQL db плохую идею для одного приложения?
- 24. Имеет ли вспомогательные стили CSS-страницы плохую идею?
- 25. Меняет корневое пространство имен в .net на плохую идею?
- 26. Разбор: держит ли все жетоны в списке плохую идею?
- 27. Использует ли CURL для SOAP плохую практику?
- 28. Использует HtmlCleaner и Jsoup вместе хорошую идею?
- 29. PHP nusoap webservice security
- 30. PHP NuSOAP Session
Я не хочу использовать другую Framework, поскольку все функции были созданы. Мне просто нужно что-то твердое, чтобы построить WSDL. Спасибо за быстрый ответ – Indy
Какие рамки вы используете? Например, с Symfony вы можете легко интегрировать Zend. – Anas
Я не использую никаких фреймворков. – Indy