2013-07-11 23 views
1

我使用ruby paypal rest api和我所做的一切似乎都是正確的,但PayPal一直說我的日期格式不正確。PayPal Rest API日期過濾不起作用。我究竟做錯了什麼?

這裏是我的電話:

Payment.all(:start_time => '2013-03-06T11:00:00Z', :end_time => '2013-03-06T11:00:00Z') 

多次嘗試後,我花了我們的文檔中的日期例如:https://developer.paypal.com/webapps/developer/docs/api/

因爲不管我做什麼,我不斷收到同樣的反應:

'{"name":"VALIDATION_ERROR","details":[{"field":"start_time","issue":"Must 
be a date_time string of form yyyy-mm-ddThh:mm:ss(.sss)?Z"},{"field":"end_time","issue":"Must 
be a date_time string of form yyyy-mm-ddThh:mm:ss(.sss)?Z"}],"message":"Invalid 
request - see details","information_link":"https://developer.paypal.com/webapps/developer/docs/api/#VALIDATION_ERROR","debug_id":"dcd8a9ce6a5e7"}' 

我瞎了還是沒有意義?

回答

1

看起來這是我們API中的一個bug,它期望的是原始值而不是url編碼值。 SDK始終將url編碼爲start_time和end_time的值(或者根據HTTP規範,實際上是所有url參數)。我們已經提交了一個bug並儘快修復。同時,如果這是你需要工作的東西,我們可能會使SDK不對url進行url編碼,或者你現在可以在本地修改代碼。

+0

謝謝!我以爲我瘋了一秒。 :-) – betaass

+0

@Praveen:這是Paypal API中的另一個錯誤:http://stackoverflow.com/questions/18158289/paypal-internal-server-error-when-capturing-payment-with-rest-api –

0

我認爲你的問題可能是你設置的開始時間和結束時間都是相同的確切值。如果您想要一天的交易,結束時間將爲2013-03-06T23:59:59Z。

+0

感謝您的回覆! 我在進行健康檢查時使用了相同的結束時間和開始時間。我預計會有200人的迴應,但沒有結果。 要使用您的示例,我嘗試了以下操作: 'Payment.all(:start_time =>'2013-03-06T11:00:00Z',:end_time =>'2013-03-06T23:59:59Z')' 並獲得相同的結果:'{「name」:「VALIDATION_ERROR」,「details」:[{「field」:「start_time」,「issue」:「必須 是一個dateytime字符串,格式爲yyyy-mm-ddThh:mm :ss(.sss)?Z「},{」field「:」end_time「,」issue「:」必須爲 爲yyyy-mm-ddThh:mm:ss(.sss)?Z「}的日期時間字符串。 ]' – betaass

相關問題