我将代码库从一个服务器移动到另一个服务器 - 没有代码更改,唯一的区别是https。我在Soundcloud开发人员中将我的应用修改为https://url
,但我不断收到此错误:
[20-Sep-2013 15:08:35 Europe/London] PHP Fatal error: Uncaught exception 'Services_Soundcloud_Invalid_Http_Response_Code_Exception' with message 'The requested URL responded with HTTP code 0.' in /system/soundcloud/Soundcloud.php:945
Stack trace:
#0 /soundcloud/Soundcloud.php(298): Soundcloud->_request('https://api.sou...', Array)
#1 /application/controllers/speaker/media.php(190): Soundcloud->credentialsFlow('soundcloud@...', '073ffbc3b66691c...')
#2 [internal function]: Media->add_audio()
#3 /system/core/CodeIgniter.php(359): call_user_func_array(Array, Array)
#4 /index.php(202): require_once('/home/iwantasp/...')
#5 {main}
thrown in /system/soundcloud/Soundcloud.php on line 945
同样,这段代码在以前的服务器上运行得很好,它只是服务器更改。
我们已经实现了通常导致此问题的安全证书无效(Soundcloud (Oauth2) API getting access token fails) - 无论如何我们都在Linux系统上,所以不应该有所作为。
cURL也适用于此服务器。
还有什么可能导致我的问题?
答案 0 :(得分:5)
如果没有看到源代码,很难调试此异常。但我的猜测是你的问题可能与这个问题有关:
https://github.com/mptre/php-soundcloud/issues/3
这意味着您应修改accessToken
来电并添加额外的cURL参数。
$accessToken = $soundcloud->accessToken($code, $postData, array(
CURLOPT_SSL_VERIFYPEER => false,
CURLOPT_SSL_VERIFYHOST => false,
));
答案 1 :(得分:3)
更好的解决方案是遵循以下Twitter API returns NULL on XAMPP答案中列出的答案,该答案指出您应该更新PHP解决方案的CA根证书。
了解更多信息: