2012-03-20 136 views
0

所以我有與YQL獲取貝寶交易總結兩個問題。首先,如果我嘗試將我的沙箱api信息放入yql控制檯,我會得到結果..有時。我想我不應該擔心這一點,也許貝寶沙箱api只是片狀,但肯定真實的東西會更可靠。YQL和貝寶交易

但是我無法弄清楚如何讓YQL使用真正的api url而不是沙箱。 如果回答這個問題,我會很高興。

第二個問題是讓它在php中運行。如果我將控制檯底部的整個編碼的REST查詢url複製到php並捲曲它,那麼它的工作原理。 (當然在沙箱模式)。

但是,如果我嘗試分解傳遞參數的查詢,然後構建字符串並在捲曲之前將其包裝在urlencode()中。我得到空。

下面是構建字符串的代碼的樣子。

$yql_base_url = " https://query.yahooapis.com/v1/public/yql "; 
$yql_query = "SELECT * from paypal.transactions" 
." WHERE APIUsername=$username" 
." AND APIPassword=$password" 
." AND Signature=$signature" 
." AND StartDate='2012-01-00T00:00:00'"; 

$yql_query_url = $yql_base_url . "?q=" . $yql_query; 
$yql_query_url .= "&diagnostics=true&env=store://datatables.org/alltableswithkeys"; 
$yql_query_url .= "&format=json"; 
$yql_query_url = urlencode($yql_query_url); 

這種失敗,或不進行urlencode()

回答

2

第一件事 - 這裏是更正後的代碼 - 基本上你有你的基地址空間,而不是URL編碼參數,你是URL編碼全網址。

$yql_base_url = "https://query.yahooapis.com/v1/public/yql"; 
$yql_query = "SELECT * from paypal.transactions" 
." WHERE APIUsername='ppalav_1285013097_biz_api1.yahoo.com'" 
." AND APIPassword='1285013102'" 
." AND Signature='AFcWxV21C7fd0v3bYYYRCpSSRl31AeJNr8zWn6wGkU8dNHzEDaF3ZXwz'" 
." AND StartDate='2012-01-00T00:00:00'"; 

$yql_query_url = $yql_base_url . "?q=" . urlencode($yql_query); 
$yql_query_url .= "&diagnostics=true&env=" . urlencode("store://datatables.org/alltableswithkeys"); 
$yql_query_url .= "&format=json"; 

echo $yql_query_url; 

// Make call with cURL 
$session = curl_init($yql_query_url); 
curl_setopt($session, CURLOPT_RETURNTRANSFER,true); 
$json = curl_exec($session); 
// Convert JSON to PHP object 
$phpObj = json_decode($json); 

現在回答你的其他問題: - 是貝寶沙盒是慢不幸的是,我們應該在表格中加入更長的超時。 - 目前只支持沙箱的原因是因爲我們發佈了它來查看興趣。如果你對一個表格感興趣(或者說你想使用哪個env的配置),我們可以發佈一個更新的表格。

感謝您嘗試了這個順便說一句,讓我們知道我們可以改進它,使其更有用。順便說一下,這裏是貝寶交易表的來源,以防萬一您想要引用它或修改它:https://github.com/paypalx/yql-tables/tree/master/paypal

+0

Praveen感謝您的詳細回覆。這工作完美。我一定會喜歡配置項目才能使用真實帳戶。這是你可以相對快速提交的東西嗎? – 2012-03-23 03:41:51

+0

Praveen還在等這個,有沒有更新? – 2012-04-12 19:09:19

0

我們已經更新了YQL表並將它們推送到我們在github上的fork。雅虎有一個拉取請求。

https://github.com/paypalx/yql-tables

如果您發現任何問題,請文件,它在github上,所以我們就會收到通知。

謝謝

+0

這裏是Sidney博客有關如何使用env更新表的地方:https://www.x.com/developers/community/blogs/sidneyallen/yql-paypal-transaction-search-updated – Praveen 2012-05-07 06:18:16