Laravel Guzzlehttp cURL 错误 56:SSLRead() 返回错误 -9806(请参阅 http:



我们有使用Oauth 1.0使用API的网站。直到几天前,该网站一直运行良好。我们使用 API 的服务器移动到新的托管服务提供商。从那以后,我们收到了错误消息

cURL 错误 56:SSLRead(( 返回错误 -9806(请参阅 http://curl.haxx.se/libcurl/c/libcurl-errors.html(

我们尝试禁用SSL验证,但这似乎也不起作用。似乎我们根本无法击中服务器。服务提供商告诉我们,我们的程序根本没有到达其服务器的记录。

use GuzzleHttpExceptionGuzzleException;
use GuzzleHttpClient;
.....
$headers = [
'Content-Type' => 'application/json',
'Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8', 
'Accept-Language: en-US,en;q=0.5', 
'Accept-Encoding: gzip, deflate', 
'Connection: keep-alive', 
];
$client = new Client(['base_uri' => self::getBaseUrl().'/ETCAPICP/api/', 'headers' => $headers]);

实际结果:

消息:"cURL 错误 56:SSLRead(( 返回错误 -9806(请参阅 http://curl.haxx.se/libcurl/c/libcurl-errors.html(">

预期是,程序应该能够成功完成握手并能够使用 API

任何帮助,不胜感激。 谢谢

每当 Guzzle 尝试建立 curl 连接时,它都会准备并提交请求,其中包含可用的信息。如果它没有任何信息,它只是将该参数设置为 null。

"User-Agent"的标头值在请求中为 null,这似乎是罪魁祸首。我不得不在标头请求中添加"User-Agent",现在一切正常。

use GuzzleHttpExceptionGuzzleException;
use GuzzleHttpClient;
.....
$headers = [
'User-Agent' => 'Testing 1.0'
];
$client = new Client(['base_uri' => self::getBaseUrl().'/ETCAPICP/api/', 'headers' => $headers]);

希望这对任何其他有类似问题的人有所帮助。

通常这可能意味着某些参数值为空或为空。

相关内容

最新更新