Próbuję wysłać żądanie SOAP w PHP. Mam usług URL, a kiedy to sprawdzić w SOAP UI, widzę następująceJak wysłać żądanie SOAP w PHP
<application xmlns="http://somenamespace.com">
<doc xml:lang="en" title="https://someurl.com"/>
<resources base="https://someurl.com">
<resource path="sdk/user/session/logon/" id="Logon">
<doc xml:lang="en" title="Logon"/>
<param name="ApiKey" type="xs:string" required="false" default="" style="query" xmlns:xs="http://www.w3.org/2001/XMLSchema"/>
<param name="ApiSecret" type="xs:string" required="false" default="" style="query" xmlns:xs="http://www.w3.org/2001/XMLSchema"/>
<method name="POST" id="Logon">
<doc xml:lang="en" title="Logon"/>
<request>
<param name="method" type="xs:string" required="true" default="" style="query" xmlns:xs="http://www.w3.org/2001/XMLSchema"/>
<representation mediaType="application/json"/>
<representation mediaType="application/xml"/>
<representation mediaType="text/xml"/>
<representation mediaType="application/x-www-form-urlencoded"/>
</request>
<response status="404 500">
<representation mediaType="text/html; charset=utf-8" element="html"/>
</response>
<response status="">
<representation mediaType="application/json"/>
<representation mediaType="application/xml"/>
<representation mediaType="text/xml"/>
<representation mediaType="application/x-www-form-urlencoded"/>
</response>
<response status="500">
<representation mediaType="application/vnd.marg.bcsocial.result-v1.9+json; charset=utf-8" element="log:Fault" xmlns:log="https://someurl.com/sdk/user/session/logon"/>
<representation mediaType="application/vnd.marg.bcsocial.result-v1.9+xml; charset=utf-8" element="web:Result_1" xmlns:web="https://someurl.com/Sdk/WebService"/>
</response>
<response status="200">
<representation mediaType="application/vnd.marg.bcsocial.api.index.options.list-v2.6+xml; charset=utf-8" element="web:ListOfApiIndexOptions_4" xmlns:web="https://someurl.com/Sdk/WebService"/>
<representation mediaType="" element="data"/>
</response>
</method>
</resource>
</resources>
</application>
Więc staram się to wykorzystać, aby się zalogować. W tej chwili próbuję coś podobnego do następującego: Jednak zawsze otrzymuję odpowiedź o błędzie, że logowanie nie powiodło się. Czy muszę wywołać metodę logowania lub coś takiego? Naprawdę tylko szukam porady, czy robię to poprawnie.
Dzięki
Dokumenty dotyczące usługi, którą próbujesz trafić, mogą zawierać wyjaśnienie ich usług REST i sposobu ich używania. Czy możesz udostępnić interfejs API, który chcesz uderzyć? Być może ktoś napisał opakowania, które można wykorzystać do uproszczenia pracy. – zedfoxus
Niestety jest to prywatny interfejs API, dokumenty nie są dostępne, chyba że się zalogujesz. Dokumenty zawierają bardzo proste notatki. Szukałem i nie ma żadnych opakowań. –
Czy jest możliwe, że brakuje ci wymaganego parametru 'method' w żądaniu? – Val