2012-09-13 56 views
5

直到今天,我已經成功地與PayPal的沙盒使用新的PayPal PHP SDK其預先配置使用這個沙箱網址發展:PayPal Sandbox API SSL握手錯誤突然開始使用PayPal PHP SDK?

https://api.sandbox.paypal.com/2.0/
(網址在Chrome目前返回:「錯誤107(淨值:: ERR_SSL_PROTOCOL_ERROR):SSL協議錯誤「)

但今天我的web應用程序崩潰由於SSL握手失敗: Uncaught exception 'PPConnectionException' with message 'error:14094410:SSL routines:SSL3_READ_BYTES:sslv3 alert handshake failure' in ./paypal-sdk-1.0.92/lib/PPHttpConnection.php:185

的唯一盛會,自昨日(當我的web應用程序的最後工作)是我已經發生重置我的沙箱「selle r「帳戶,這可能會重置API憑證according to this post。由於我手動更新了API憑據,並且驗證了它們是正確的,所以我不能說它們在這一點上是否有錯。

經過大量的搜索,我發現其他網站的文章,說的網址應該是:

https://api-3t.sandbox.paypal.com/2.0/
(網址在Chrome中返回一個SOAP響應。)

所以我改變了我的PayPal PHP SDK的包括從https://api.sandbox.paypal.com/2.0/https://api-3t.sandbox.paypal.com/2.0/的URL,它的工作原理再次完美。這裏發生了什麼?非「3t」沙箱網址現在是否被簡單地破解?

編輯:從@win和@JoelP收到的反饋意見後,我提出了bug report through the PayPal SDK github所以有人在PayPal可以解釋今天的改變和修復SDK使用簽名證書時有正確的URL。

編輯2:PayPal fixed the issue幾天前。它將在下一個版本中提供。 https://github.com/paypal/SDKs/issues/22#issuecomment-8660682

感謝大家的幫助。

回答

5

差異是簽名Certificate and Signature

之間

enter image description here

是訪問貝API的preferred way

+0

我明白了。不同的URL是有道理的,但它仍然不能解釋爲什麼直到今天SDK中的原始URL工作正常。感謝您確認正確的配置。 – jimp

+0

錯誤的URL如何在第一時間工作仍然是一個謎,但你的信息幫助我解決它,並意識到我需要通知PayPal SDK開發團隊。 – jimp

2

我無法回答這個問題,但我可以說我剛剛發現了同樣的問題。我確認jimp將SDK的服務端點配置更改爲:

service.EndPoint="https://api-3t.sandbox.paypal.com/2.0/" 

解決了我的問題。 (這是在Paypal SDK config/sdk_config.ini文件中)。

在我的情況下,我使用的是PHP SDK。我沒有改變我的沙箱帳戶上的任何內容。我最好的猜測是原始URL只是暫時停下來。 (Firefox顯示「安全連接失敗」警報)。

+0

謝謝您確認。我剛剛向SDK github發佈了一個錯誤報告,所以希望PayPal中的某人能夠解決問題或更新SDK。最新的SDK仍然使用非「3t」網址。 – jimp

+0

只需添加快速評論「(Firefox顯示」安全連接失敗「警報)。這是https://api.paypal.com/端點的預期行爲。 https://api.paypal.com/需要客戶端(API)證書來完成SSL鏈。沒有它,它會通過SSL驗證失敗,並返回一個錯誤。 – Robert

4


的問題是固定的代碼已經被推到主分支。您應該在接下來的幾天內在x.com上看到刷新的sdk捆綁包。

參考GitHub的問題在這裏https://github.com/paypalx/SDKs/issues/22

感謝, 人員Prasanna。

+0

謝謝。我收到了關於這件事的電子郵件通知,我剛回來發佈郵件。 – jimp