Я пытаюсь использовать SOAPClient в PHP, чтобы получить некоторые значения из функции. Я создал код, однако получаю ошибку «UnSupported Media Type».
Я пытался исследовать эту проблему и обнаружил, что проблема с SOAP-версией или типом контента в заголовке может быть проблемой ... что я хотел бы знать, если я могу установить версию SOAP и тип контента в заголовок, используя код ниже -
в надежде, что кто-то может помочь.
Спасибо
C
<?php
error_reporting(E_ALL);
try{
header("Content-type: application/soap+xml; charset=utf-8");
$client = new
SoapClient("https://www1.gsis.gr/wsaade/RgWsPublic2/RgWsPublic2?WSDL",
array("trace" => true, '
exceptions' => 1));
// $client->__getTypes();
// $client->__getFunctions();
// $result = $client->functionName();
$params = new SoapVar('
<?xml version="1.0" encoding="utf-8"?><env:Envelope
xmlns:env="http://www.w3.org/2003/05/soap-envelope" xmlns
:ns1="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-
secext-1.0.xsd" xmlns:ns2="http://rgwspublic2/RgWsPublic2Service"
xmlns:ns3="http://rgwspublic2/RgWsPublic2">
<env:Header>
<ns1:Security>
<ns1:UsernameToken>
<ns1:Username>******</ns1:Username>
<ns1:Password>******</ns1:Password>
</ns1:UsernameToken>
</ns1:Security>
</env:Header>
<env:Body>
<ns2:rgWsPublic2AfmMethod>
<ns2:INPUT_REC>
<ns3:afm_called_by/>
<ns3:afm_called_for>******</ns3:afm_called_for>
</ns2:INPUT_REC>
</ns2:rgWsPublic2AfmMethod>
</env:Body>
</env:Envelope>', XSD_ANYXML);
$result = $client->__soapCall('rgWsPublic2AfmMethod', array($params));
highlight_string($client->__getLastRequest());
}
catch(SoapFault $fault){
die("SOAP Fault:<br />fault code: {$fault->faultcode}, fault string:
{$fault->faultstring}");
}