2014-03-29 101 views
0

出於某種原因,當我嘗試連接到PayPal沙箱API並使用我的XAMPP服務器執行SetExpressCheckout時,它失敗。 我打開錯誤報告上,這是我得到的消息:Paypal SANDBOX SetExpressCheckout停止工作

Warning: file_get_contents(https://api-3t.sandbox.paypal.com/nvp/): failed to open stream: HTTP request failed! HTTP/1.0 403 Forbidden 

我已經做了一些測試,它只是沒有任何意義:

  1. 我可以連接到使用正確的活API證書。
  2. 我可以使用不正確的憑據連接到實時API。
  3. 不能用正確或不正確的憑據連接到沙箱API。
  4. 我可以使用Web瀏覽器使用正確或不正確的憑據連接到實時API和沙箱API。
  5. 如果我輸入一個無效的網站名稱,它會給我一個不同的警告(如下)。

警告:

Warning: file_get_contents(): php_network_getaddresses: getaddrinfo failed: No such host is known. 

那麼,爲什麼當我連接到https://api-3t.sandbox.paypal.com/nvp/使用我的本地服務器沒有響應?我沒有改變代碼,它仍然與貝寶直播一起工作,所以突然在這裏發生了什麼?

+0

我使用'https:// api-3t.paypal.com/nvp /'連接到現場Paypal API和'https://api-3t.sandbox.paypal.com/nvp /'連接到沙箱API –

回答

2

從3月25日起PayPal不支持HTTP/1.0,see details here。你可以找到有用的this post

+1

太棒了!感謝那。我在我的stream_context_create()中添加了''protocol_version'=> 1.1,並在我的頭文件中添加了'Connection:Close',它工作正常! –