У нас возникли некоторые проблемы с настройкой PHP SOAP Client для использования Royal Mail Tracking API. У нас есть учетная запись, настроенная с помощью Royal Mail, и у нас есть идентификаторы и секреты. Мы можем заставить его работать с SOAPUI, но при попытке реализовать его в PHP мы всегда получаем ошибку «Неверная версия». У нас […]
Я создал SOAP-клиент так: $client = new SoapClient("file.wsdl"); И тогда, когда я хочу вызвать функцию API $client->Authenticate("user", "password"); Я получаю следующую ошибку: Форматирование исключило исключение при попытке десериализации сообщения: Ошибка десериализации тела сообщения запроса для операции «Аутентификация». Конечный элемент «Тело» из пространства имен « http://schemas.xmlsoap.org/soap/envelope/ » ожидается. Найден элемент 'param1' из пространства имен ''. Но […]
Я работаю с WSDL, который имеет другое SOAP-действие в заголовке, которое я ожидал бы. В тот момент, когда я вызываю веб-службу, я просто получаю как сайт описания .NET веб-службы. В этом случае это https://preprod.squidcard.com/ytm/sQuidpages/sQuidPWS.asmx Какой URL-адрес я должен называть, чтобы перейти к методу getPurseBalance (), поскольку параметр в SOAP-действии из WSDL, похоже, не определен, есть […]
Вызов веб-службы с моего контроллера: $client = new \SoapClient("http://…/webservice/NAME_OF_PAGE.asmx?WSDL"); $result = $client->EstadoHabitacionesFechas(); Я получаю это: <xs:schema xmlns="" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" id="NewDataSet"> <xs:element name="NewDataSet" msdata:IsDataSet="true" msdata:MainDataTable="TablaEstadoHabitacion" msdata:UseCurrentLocale="true"> <xs:complexType> <xs:choice minOccurs="0" maxOccurs="unbounded"> <xs:element name="TablaEstadoHabitacion"> <xs:complexType><xs:sequence> <xs:element name="IdHabitacion" type="xs:int" minOccurs="0"/> <xs:element name="FechaEntrada" type="xs:string" minOccurs="0"/> <xs:element name="FechaSalida" type="xs:string" minOccurs="0"/> </xs:sequence> </xs:complexType> </xs:element> </xs:choice> </xs:complexType> </xs:element> </xs:schema> <diffgr:diffgram xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" xmlns:diffgr="urn:schemas-microsoft-com:xml-diffgram-v1"> <DocumentElement […]
Я вызываю веб-службу, которая находится в протоколе https. и при вызове я получаю сообщение об ошибке «не удалось загрузить внешнюю сущность». поскольку я ищу в google, это потому, что в PHP5 класс SOAP не будет анализировать WSDL-файл, расположенный на безопасном HTTPS-соединении. Каково решение? Я не хочу использовать http вместо https.
У меня небольшая проблема с использованием пространства имен в SoapClient PHP. Из документации я верю, что опция typemap конструктора решит мою проблему. http://php.net/manual/en/soapclient.soapclient.php Я просто не нашел убедительного примера его использования. Есть ли у кого-нибудь пример?
У меня много недоразумений о том, как настроить расширение PHP SOAP в Windows на основе того, что в сети. Не могли бы вы мне помочь, как я смогу это сделать? Любые предлагаемые ссылки?
Я чрезвычайно новичок в SOAP, и я пытаюсь внедрить быстрый тестовый клиент на PHP, который использует веб-службу ASP.NET. Веб-служба основывается на заголовке Soap, который содержит параметры авторизации. Возможно ли отправить заголовок auth вместе с запросом на мыло при использовании WSDL? Мой код: PHP $service = new SoapClient("http://localhost:16840/CTI.ConfigStack.WS/ATeamService.asmx?WSDL"); $service->AddPendingUsers($users, 3); // Example веб-сервис [SoapHeader("AuthorisationHeader")] [WebMethod] public […]
Учитывая, что следующий client.php создает этот запрос XML: <?xml version="1.0" encoding="UTF-8"?> <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://soap.dev/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"> <SOAP-ENV:Body> <ns1:Test> <RequestId xsi:type="xsd:int">1</RequestId> <PartnerId xsi:type="xsd:int">99</PartnerId> </ns1:Test> </SOAP-ENV:Body> </SOAP-ENV:Envelope> Как получить доступ к именам параметров? (RequestId и PartnerId) внутри server.php? Имена явно присутствуют в полезной нагрузке, но на стороне сервера принимаются только значения (1 и 99) Пример […]
Согласно заголовку, можно ли вывести XML, созданный new SoapClient , прежде чем пытаться запустить __soapCall() чтобы убедиться, что он правильный, прежде чем отправлять его на SOAP-сервер?