我正在沙箱中使用PayPal REST .net SDK方法Payment.Create與CreditCard對象。當所有參數都有效並使用https://developer.paypal.com/webapps/developer/docs/integration/direct/accept-credit-cards/中的測試CC號碼時,支付對象將從該方法返回並一切正常。PayPal REST API .net SDK - 400錯誤請求
但是,如果某個參數無效(例如過期到期日期或沙箱未識別的CC號碼),則不會返回Payment對象。相反,該方法拋出一個異常:「HttpConnection中的異常執行:無效的HTTP響應遠程服務器返回錯誤:(400)錯誤請求」,但沒有進一步解釋。
當我在cURL中執行相同的請求時,除了「400 Bad Request」之外,我還得到了一個JSON響應。這包括更多有用的消息,如「VALIDATION_ERROR」和「無效到期(不能在過去)」。
我的問題:有沒有辦法從SDK中獲取這些消息?
我已經試過:
- 貝文檔:https://developer.paypal.com/webapps/developer/docs/api/#errors 該文件提到,在錯誤的情況下,他們在響應的正文返回的細節。不幸的是,它沒有提供這些SDK是否可以訪問的線索。
- 各種Google和SO搜索。
- 隨SDK提供的PizzaApp示例代碼沒有任何異常處理方式或進一步深入瞭解此問題。
- 我在SDK中看到一個PayPalException對象,但沒有發現任何指示應該如何使用它或者它甚至與此問題有關的東西。
非常感謝所有幫助。
感謝您的答覆。我會爲未來的應用記住這一點。不幸的是,這在這種情況下沒有幫助,因爲我需要在應用程序範圍內回錯錯誤。此外,該應用程序是Windows窗體,但我認爲可以對app.config進行類似的更改以啓用相同的日誌記錄。 –
我在試圖構建連接到PP API的一部分時遇到了這個問題,並且想知道是否有辦法獲取所記錄的內容並返回?否則,當卡被拒絕時(例如無效號碼,過期卡等),400/Bad Request不會告訴我們爲什麼它不起作用,只是它沒有。 – RubyHaus
@digitall,正好!這就是爲什麼我必須使用第一個答案中提到的黑客。我從未找到過使用股票API的方法,正如您所提到的,日誌記錄對應用程序內容沒有多大幫助。 –