У меня есть googled и посмотрел здесь в stackoverflow, но я не нашел решение моей конкретной проблемы. Я получаю ошибкуphp soapclient wsdl SOAP-ERROR: Разбор WSDL: Не удалось загрузить с
SOAP-ERROR: Parsing WSDL: Couldnt load from "https://sampleurl.com/MerchantQueryService.asmx?WSDL" : failed to load external entity "https://sampleurl.com/MerchantQueryService.asmx?WSDL"
Я пытаюсь использовать SOAP API с URL, как
https://sampleurl.com/MerchantQueryService.asmx?WSDL
Я бегу MAMP на моем локальном хосте и с помощью GoDaddy хостинга, я примерил как с файл WSDL можно найти здесь
http://clemdemo.com/test.wsdl
В PHP я использую ниже код
error_reporting(-1);
ini_set('display_errors', 'On');
ini_set('soap.wsdl_cache_enabled', 0);
echo "<pre>";
try {
$url = "https://sampleurl.com/MerchantQueryService.asmx?WSDL ";
$headers = [
'Host: sampleurl.com',
'Connection: Keep-Alive',
'User-Agent: PHP-SOAP/5.3.29',
'Content-Type: text/xml; charset=utf-8',
'SOAPAction: "RequestTransaction"',
'Content-Length: 409'];
$rq = [
"userName" => "username_here",
"passWord" => "password_here",
"referenceId" => "3455566694",
"msisdn" => "346774313"];
try {
$cient = new SoapClient($url,
[
'soap_version' => SOAP_1_2,
'exceptions' => 1,
'cache_wsdl' => WSDL_CACHE_NONE,
'trace' => 1,
'stream_context' => stream_context_create(array('http' => array('header' => $headers)))
]);
print_r($cient);
} catch (SoapFault $e) {
echo "\nFault Code: ".$e->faultcode;
echo "\nFault String: ".$e->faultstring;
}
На моем локальном хосте MAMP у меня есть SOAP, openssl и curl.
Кроме того, я попытался с помощью (отправка запроса) к API с онлайн WSDL http://wsdlbrowser.com он работает, но на коде с использованием PHP он не