Я звоню в веб-службу, но не могу получить ответ. Мне нужен специальный «конверт», поэтому я создал его сам и использовал его для вызова веб-службы. Это все, что я сделал:
$sobre = '<Envelope xmlns="http://schemas.xmlsoap.org/soap/envelope/">';
$sobre .= '<Body><cargaTituloElectronicoRequest xmlns="http://ws.web.mec.sep.mx/schemas">';
$sobre .= '<nombreArchivo>' . $arch . '</nombreArchivo>';
$sobre .= '<archivoBase64>' .$xml . '</archivoBase64>';
$sobre .= '<autenticacion><usuario>' . $user . '</usuario><password>' . $pass . '</password></autenticacion>';
$sobre .= '</cargaTituloElectronicoRequest></Body></Envelope>';
$location_URL="https://metqa.siged.sep.gob.mx/met-ws/services/TitulosElectronicos.wsdl";
$action ="https://metqa.siged.sep.gob.mx/met-ws/services/TitulosElectronicos.wsdl/cargaTituloElectronico";
$client = new SoapClient($location_URL, array('trace' => 1));
try{
$resultado = $client->__doRequest($sobre, $location_URL, $action, 'SOAP_1_2', 0);
}catch (SoapFault $exception){
var_dump(get_class($exception));
var_dump($exception);
$numLote = 0;
}
echo "REQUEST:\n" . htmlentities($client->__getLastRequest()) . "\n";
Я не получаю __getLastRequest()
, (не знаю почему) ... и "$action
" Я уже использовал только метод ('cargaTituloElectronico
'), но это не работает.
Я не могу использовать $client->cargaTituloElectronico($params)
, потому что автоматически сгенерированный конверт не принят сервером.
Я был бы очень признателен за вашу помощь. Заранее спасибо