Я должен отправить данные в SOAP с большими неудобствами. Я не могу использовать cUrl .
Вот часть моего кода, которая в значительной степени является образцом nuSoap.
<code> $wsdl = "wsdl address";
$proxyhost = isset($_POST['proxyhost']) ? $_POST['proxyhost'] : '';
$proxyport = isset($_POST['proxyport']) ? $_POST['proxyport'] : '';
$proxyusername = isset($_POST['proxyusername']) ? $_POST['proxyusername'] : '';
$proxypassword = isset($_POST['proxypassword']) ? $_POST['proxypassword'] : '';
$useCURL = isset($_POST['usecurl']) ? $_POST['usecurl'] : '0';
$client = new nusoap_client($wsdl, 'wsdl', $proxyhost, $proxyport, $proxyusername, $proxypassword);
$client->soap_defencoding = 'UTF-8';
$client->decode_utf8 = false;
$client->setUseCurl($useCURL);
$err = $client->getError();
if ($err) {
echo '<h2>Constructor error</h2><pre>' . $err . '
';} $ param = array ('credentials' => array ('user' => 'user', 'passwd' => 'passwd'));$ result = $ client-> call ('Autenticate', массив ('parameters' => $ param), '', '', false, true);if ($ client-> fault) {echo '
Fault
';
print_r($result);
echo '
';} else {// Проверка на ошибки $ err = $ client-> getError ();if ($ err) {// Показать ошибку echo '
Error
' . $err . '
';} else {// Показать результат echo '
Result
';
print_r($result);
echo '
';}} echo '
Запрос
' . htmlspecialchars($client->request, ENT_QUOTES) . '
';echo '
Response
' . htmlspecialchars($client->response, ENT_QUOTES) . '
';echo '
Debug
' . htmlspecialchars($client->debug_str, ENT_QUOTES) . '
';
Всякий раз, когда я включаю cURL на сервере, это работает.Когда я не получил, я получил это
wsdl error: Getting wsdl address - HTTP ERROR: The PHP cURL Extension is required for HTTPS or NLTM. You will need to re-build or update your PHP to include cURL or change php.ini to load the PHP cURL extension.
Кто-нибудь прошел через это?
Заранее спасибо