访问 PayPal 沙盒 Rest 时响应 401 API
Response 401 when accessing PayPal sandbox Rest API
我能够在 https://api.sandbox.paypal.com/v1/oauth2/token
请求访问令牌并发送 POST
以使用给定的访问令牌在 https://api.sandbox.paypal.com/v1/payments/payment
创建新的付款。这两个 API 运行 没有任何问题。
但是当对我也使用上面的访问令牌创建的 payment_id 执行 GET
时,它给了我 401
https://api.sandbox.paypal.com/v1/payments/payment/PAY-XXXX
。这是我要在 return_url
.
执行付款的步骤
我正在使用从 https://github.com/paypal/PayPal-PHP-SDK 下载的 PayPal PHP SDK。一切仍处于沙盒模式。 client_id
和 secret
是沙箱凭据。
此外,我已经尝试 运行ning cURL 到 payment_id 的 URL 以上,但它也给了 HTTP/1.1 401 Unauthorized
。
curl -v https://api.sandbox.paypal.com/v1/payments/payment/PAY-XXXX
-H 'Content-Type: application/json'
-H 'Authorization: Bearer ACCESS_TOKEN'
根据文档,401
表示访问令牌无效或过期,但我认为它不适用于此处,因为之前的 POST
命令可以 运行 成功。
更新 #1:事实上,我已经尝试 运行 整个流程(请求 access_token
、post
付款、get
付款和 execute
) 使用 cURL 没有问题。所以问题一定出在 PHP 代码
PHP 中有一个错字让我错了 access_token
。有趣的是,仍然允许使用 POST
创建新付款的方法,这让我很困惑。
我能够在 https://api.sandbox.paypal.com/v1/oauth2/token
请求访问令牌并发送 POST
以使用给定的访问令牌在 https://api.sandbox.paypal.com/v1/payments/payment
创建新的付款。这两个 API 运行 没有任何问题。
但是当对我也使用上面的访问令牌创建的 payment_id 执行 GET
时,它给了我 401
https://api.sandbox.paypal.com/v1/payments/payment/PAY-XXXX
。这是我要在 return_url
.
我正在使用从 https://github.com/paypal/PayPal-PHP-SDK 下载的 PayPal PHP SDK。一切仍处于沙盒模式。 client_id
和 secret
是沙箱凭据。
此外,我已经尝试 运行ning cURL 到 payment_id 的 URL 以上,但它也给了 HTTP/1.1 401 Unauthorized
。
curl -v https://api.sandbox.paypal.com/v1/payments/payment/PAY-XXXX
-H 'Content-Type: application/json'
-H 'Authorization: Bearer ACCESS_TOKEN'
根据文档,401
表示访问令牌无效或过期,但我认为它不适用于此处,因为之前的 POST
命令可以 运行 成功。
更新 #1:事实上,我已经尝试 运行 整个流程(请求 access_token
、post
付款、get
付款和 execute
) 使用 cURL 没有问题。所以问题一定出在 PHP 代码
PHP 中有一个错字让我错了 access_token
。有趣的是,仍然允许使用 POST
创建新付款的方法,这让我很困惑。