2016-04-23 31 views
0

我得的OAuth創建客戶,然後通過他們的客戶ID加載客戶工作不能叫QuickBooks的「查詢」端點

然而,當我試圖通過名稱中使用「查詢」端點找到一個客戶,它使我失敗。

我正在使用Laravel和PHPoAuthLib庫。我的代碼看起來像這樣:

$oauth = OAuth::consumer('QuickBooks'); 
$oauth_token = unserialize(file_get_contents(storage_path("tokens/saved_data.txt"))); 

$storage = $oauth->getStorage(); 
$storage->storeAccessToken('QuickBooks', $oauth_token['access_token']); 

// Check for Quickbooks donor 
$result = $oauth->request("/v3/company/" . $oauth_token['company_id'] . "/query?query=SELECT * FROM Customer MAXRESULTS 1", "GET"); 

return $result; 

這是返回400錯誤消息「未知版本」

試圖谷歌這個錯誤表明,它可能會在簽名生成的問題。

回答

0

其實我想通了這個問題大約兩個星期前 - 更新與答案,我發現:

查詢需要進行URL編碼。我把它改成如下:

$result = $oauth->request("/v3/company/" . $oauth_token['company_id'] . "/query?query=" . urlencode("SELECT * FROM Customer MAXRESULTS 1"), "GET"); 

一切完美

工作