嘗試使用PHP和CURL調用訪問Dropbox v2 API調用。基於沙盒https://dropbox.github.io/dropbox-api-v2-explorer/#files_search,「顯示代碼」看起來像這樣。使用PHP CURL調用不起作用的Dropbox v2 API問題
curl -X POST https://api.dropboxapi.com/2/files/search \
--header 'Authorization: Bearer myAccessTokenHere \
--header 'Content-Type: application/json' \
--data '{"path":"/My Cars","query":"\".j\"","start":0,"max_results":50}'
我的PHP代碼如下所示
function performSearch()
{
$cheaders = array("Authorization: Bearer myAccessTokenHere",
'Content-Type: application/json',
'Dropbox-API-Arg: {"path":"/My Cars","query":"\".j\"","start":"0","max_results":"50"}');
$ch = curl_init('https://content.dropboxapi.com/2/files/search');
curl_setopt($ch, CURLOPT_HTTPHEADER, $cheaders);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($ch);
echo "\n response = $response";
curl_close($ch);
}
當我執行它,我得到
響應= { 「錯誤」: 「未找到」}
謝謝你的迴應,比我更接近,但這個代碼返回一個錯誤,不知道它說的是哪個部分 - response =調用API函數「files/search」時出錯:請求正文:無法解碼輸入爲JSON – JMoskwa
錯誤是說你的請求體中的JSON(也就是你的參數給AP我打電話)是無效的。看起來你在那裏有一對額外的'\'',你可能意思是:''{\「path \」:\「/ My Cars \」,\「query \」:\「。j \」 ,「start」:0,\「max_results \」:50}「)' – Greg