Я пытаюсь получить некоторые данные с удаленного сервера с помощью SOAP с использованием PHP 7.0, но я получаю следующую ошибку:
Объект SoapFault [message: protected] => SOAP-ERROR:Синтаксический анализ WSDL: не удалось загрузить из 'https://url.com'.
. Он отлично работает в браузере и при отключенном https.
Я уже пытался отключить SSLпроверка с помощью:
'ssl' => [
// set some SSL/TLS specific options
'verify_peer' => false,
'verify_peer_name' => false,
'allow_self_signed' => true
]
И передать мой сертификат и ключ с помощью:
'ssl' => [
'local_cert' => $sslClientCert,
'local_pk' => $sslClientKey'
]
Ни одна из них не работает.Я также проверил, что openssl включен на сервере с phpinfo()
.Как мне решить эту проблему?
Попытка
<?php
$url = "https://theurl.com";
$client = new SoapClient($url, [
'stream_context' => stream_context_create([
'ssl' => [
"verify_peer"=>false,
"verify_peer_name"=>false,
]
]),
'trace' => 1,
'exceptions' => true
]);
$params = ['groups' => [
[
"courseid" => 3,
"name" => "Group test",
"description" => "Group test",
"descriptionformat" => 1,
"enrolmentkey" => "",
"idnumber" => ""
]
]];
$response = $client->__soapCall('core_group_create_groups',$params);