Здравствуйте друзья. Собственно проблема вот в чем.Есть SOAP-запрос:
CODE ( htmlphp):
скопировать код в буфер обмена
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns="http://kitsoft.kiev.ua/mtsbu/2017/08/22" xmlns:u="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd"> <soapenv:Header> <o:Security soapenv:mustUnderstand="1" xmlns:o="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd"> <o:UsernameToken> <o:Username>'.Epolis::TOKEN_KEY.'</o:Username> </o:UsernameToken> </o:Security> </soapenv:Header> <soapenv:Body> <ns:GetSignFromRequest> <ns:digSignRequest> <ns:Contract> <ns:Address>'.$ar['adress'].'</ns:Address> <ns:AutoDescr>'.$ar['marka_name'].' '.$ar['model_name'].'</ns:AutoDescr> <ns:BirthDate>'.$ar['birthday'].'</ns:BirthDate> <ns:DBonusMalusID>'.$ar['bonusMalus'].'</ns:DBonusMalusID> <ns:DCitizenStatusID>'.$ar['rezident'].'</ns:DCitizenStatusID> <ns:DCityID>'.$ar['city'].'</ns:DCityID> <ns:DDiscountID>'.$ar['discount'].'</ns:DDiscountID> <ns:DExpLimitID>'.$ar['stag'].'</ns:DExpLimitID> <ns:DMarkID>'.$ar['marka'].'</ns:DMarkID> <ns:DModelID>'.$ar['model'].'</ns:DModelID> <ns:DPeriodID>'.$ar['strok'].'</ns:DPeriodID> <ns:DPersonStatusID>'.$ar['person'].'</ns:DPersonStatusID> <ns:DPrivelegeID>'.$ar['pilgy'].'</ns:DPrivelegeID> <ns:DSphereUseID>'.$ar['taksi'].'</ns:DSphereUseID> <ns:DVehicleTypeID>'.$ar['type_tz'].'</ns:DVehicleTypeID> <ns:Franchise>'.$ar['franshyza'].'</ns:Franchise> <ns:IdentCode>'.$ar['ipn'].'</ns:IdentCode> <ns:InsPremium>'.$ar['price'].'</ns:InsPremium> <ns:Name>'.$ar['name'].'</ns:Name> <ns:PName>'.$ar['pobatkovi'].'</ns:PName> <ns:ProdYear>'.$ar['year_tz'].'</ns:ProdYear> <ns:RegNo>'.$ar['nomer_tz'].'</ns:RegNo> <ns:StartDate>'.$ar['date_start'].'</ns:StartDate> <ns:Surname>'.$ar['prizv'].'</ns:Surname> <ns:VIN>'.$ar['vin'].'</ns:VIN> <ns:VehicleUsage>111111111111</ns:VehicleUsage> <ns:k1>'.$ar['k1'].'</ns:k1> <ns:k2>'.$ar['k2'].'</ns:k2> <ns:k3>'.$ar['k3'].'</ns:k3> <ns:k4>'.$ar['k4'].'</ns:k4> <ns:k5>'.$ar['k5'].'</ns:k5> <ns:k6>'.$ar['k6'].'</ns:k6> <ns:k7>'.$ar['bonus_c'].'</ns:k7> </ns:Contract> <ns:InputMessageID>testRequest</ns:InputMessageID> </ns:digSignRequest> </ns:GetSignFromRequest> </soapenv:Body> </soapenv:Envelope>
Делаем запрос через SOAP:
PHP:
скопировать код в буфер обмена
public static function doRequest($xml,$req){ $params = array ('encoding' => 'UTF-8', 'verifypeer' => false, 'verifyhost' => false, 'soap_version' => SOAP_1_2 , 'trace' => 1, 'exceptions' => 1, "connection_timeout" => 180 ); $client = new SoapClient("https://policyrw.mtsbu.ua/v3/ChangeContracts.svc?wsdl",$params); $ns = 'http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd'; $headerbody = array('Security'=>array ('UsernameToken' => array('Username'=>'TOKEN'))); $header = new SOAPHeader($ns, 'Security', $headerbody); $client->__setSoapHeaders($header); $res = $client->__doRequest($xml, 'https://policyrw.mtsbu.ua/v3/ChangeContracts.svc', 'http://kitsoft.kiev.ua/mtsbu/2017/08/22/IDigitalPolicy/GetSignFromRequest', SOAP_1_1); return $res; }
Получаю ответ в виде строки, а должен получить в виде SOAP/XML. Помогите понять где лоханулся.
|