使用cURL + PHP的Sorenson 360 API调用返回false

问题描述:

我试图用cURL和PHP访问Sorenson-360 API,但是我无法使用它们的API进行身份验证。使用cURL + PHP的Sorenson 360 API调用返回false

我使用的代码是:

$postURL = "https://360services.sorensonmedia.com/sessions"; 
$postVars = "username=".$username."&password=".$password; 
$c = curl_init(); 
curl_setopt($c, CURLOPT_URL, $postURL); 
var_dump($c); 
curl_setopt($c, CURLOPT_RETURNTRANSFER, 1); 
curl_setopt($c, CURLOPT_HEADER, 0); 
curl_setopt($c, CURLOPT_SSL_VERIFYPEER, false); 
curl_setopt($c, CURLOPT_POST, 1); 
curl_setopt($c, CURLOPT_POSTFIELDS, $postVars); 
$content = curl_exec($c); 
var_dump($content); 
//echo $content; 
curl_close($c); 

我的响应打印出的页面上:

资源(4)的类型(卷曲)串(1) “”

我想使用的API机制的文档是在这里: http://developers.sorensonmedia.com/api/accounts/login

类似的帖子在计算器上那个yeilded没有其他比使用Zend的(我没有,也不明白)溶液张贴在这里: PHP: posting data to REST API (Sorenson 360)

我没有访问我的服务器和上安装任何东西Zend入门文档没有点击我。我更喜欢使用cURL,因为我有点熟悉它。

还有就是在你的代码的几个问题:

    curl_setopt($ch, CURLOPT_URL, POSTURL);
  1. 你应该$ch变量更改为你所连接到不被信任的站点$c
  2. 安全证书。要禁用此项检查你需要添加curl_setopt($c, CURLOPT_SSL_VERIFYPEER, false);
  3. 最后,为什么你需要定义常量URL和POST参数?良好的旧PHP变量有什么问题?

UPD:

出于调试目的,我建议你打开CURLOPT_HEADER选项:

curl_setopt($c, CURLOPT_HEADER, true); 

如果你得到HTTP/1.1 500 Internal Server Error的反应,什么是错的服务你”重新呼叫,而不是与您的代码。

+0

感谢您的回答..我仍然无法成功连接到他们的API。在第一篇文章 – 2011-03-17 18:37:20

+0

添加页眉的新代码和错误显示500内部服务器错误......我转发它自己的工程部。我一直在与谁联系以解决问题。感谢您的帮助。 – 2011-03-17 19:39:02

+0

@不客气:) – Vika 2011-03-17 19:42:02