php - 没有卷曲的 NuSoap
问题描述
我必须将数据发送到 SOAP,非常不便。我不能使用 cUrl。
这是我的代码的一部分,它几乎是一个 nuSoap 示例。
$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 . '</pre>';
}
$param = array('credentials'=>array('user'=>'user', 'passwd'=>'passwd'));
$result = $client->call('Autenticate', array('parameters' => $param), '', '', false, true);
if ($client->fault) {
echo '<h2>Fault</h2><pre>';
print_r($result);
echo '</pre>';
} else {
// Check for errors
$err = $client->getError();
if ($err) {
// Display the error
echo '<h2>Error</h2><pre>' . $err . '</pre>';
} else {
// Display the result
echo '<h2>Result</h2><pre>';
print_r($result);
echo '</pre>';
}
}
echo '<h2>Request</h2><pre>' . htmlspecialchars($client->request, ENT_QUOTES) . '</pre>';
echo '<h2>Response</h2><pre>' . htmlspecialchars($client->response, ENT_QUOTES) . '</pre>';
echo '<h2>Debug</h2><pre>' . htmlspecialchars($client->debug_str, ENT_QUOTES) . '</pre>';
每当我在服务器中启用 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.
有人经历过吗?
提前致谢
解决方案
推荐阅读
- c++ - 为什么我在这里需要这个花括号?谁能解释我为什么会这样?
- terraform-provider-gcp - 如何有条件地启用/禁用 GCP 存储桶的生命周期规则
- python - 通过循环从目录中提取文件
- html - 尝试将子域 URL 重定向到子目录索引
- java - 二进制数组的最小相邻交换次数
- javascript - imaginemin-jpegoptim 没有压缩到大小
- c# - neo4j 是否有主键/对象 ID 之类的东西?
- xamarin - 视口单元不适用于 Xamarin 中的 HybridWebView
- javascript - 如何将 getFieldDecorator 与无状态组件一起使用
- java - 如何将我自己的代码/函数和外部 java 库添加到 azure 函数应用程序