我试图使用PHP向desk.comapi发出一个简单的curl请求,但很难得到响应。以下是他们的文档。
$ curl https://yoursite.desk.com/api/v2/cases/:id '
-u email:password '
-H 'Accept: application/json'
下面是我的PHP来尝试并完成上面的
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "https://url.desk.com/api/v2/cases -u email:password");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_HEADER, 'Accept: application/json');
$output = curl_exec($ch);
var_dump($output);
curl_close($ch);
我以前几乎没有用过卷发,所以如果能帮我解释为什么没有得到回应,我将不胜感激。
您是否尝试发送基本授权?
curl_setopt($ch, CURLOPT_URL, "https://url.desk.com/api/v2/cases");
curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_ANY);
curl_setopt($ch, CURLOPT_USERPWD, "$username:$password");
curl_setopt($ch, CURLOPT_HEADER, 'Accept: application/json');
您也不需要url中的"-u",这是用于命令行curl的。
此外,您需要将":id"替换为以上案例的id,以返回特定案例。例如:
curl_setopt($ch, CURLOPT_URL, "https://url.desk.com/api/v2/cases/1");
请尝试此操作,确保定义/替换$email和$password
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "https://url.desk.com/api/v2/cases");
curl_setopt($ch, CURLOPT_USERPWD, "{$email}:{$password}");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_HEADER, 'Accept: application/json');
$output = curl_exec($ch);
var_dump($output);
curl_close($ch);