发送请求Web服务时,PHP中出现Curl错误56

时间:2020-05-07 15:05:02

标签: php ssl curl

我通过SOAP向具有自签名证书的Web服务发送请求,为此我应用了以下功能,因此将其省略

        CURLOPT_SSL_VERIFYPEER => false,
        CURLOPT_SSL_VERIFYHOST => 0,

但是我得到以下错误代码:

CURL error: 56

做一些研究,根据列出的Curl(https://curl.haxx.se/libcurl/c/libcurl-errors.html)错误,这是由于接收网络数据失败所致。

我还可以应用其他什么功能来克服此错误?

        $curl_options = array(
        CURLOPT_URL => $url,
        CURLOPT_HTTPHEADER => $headers,
        CURLOPT_POST => 1,
        CURLOPT_POSTFIELDS => $data,
        CURLOPT_RETURNTRANSFER => 1,
        CURLOPT_SSL_VERIFYPEER => false,
        CURLOPT_SSL_VERIFYHOST => 0,
        CURLOPT_TIMEOUT =>20

    );

1 个答案:

答案 0 :(得分:0)

我通过在标头中添加SOAPAction解决了这个问题:

$headers = array("Content-type: text/xml;charset=\"utf-8\"", "Accept: text/xml", "SOAPAction: http://direccion.com/Crear", "Content-length: ".strlen($xml), );