我的服务器调用 v2/checkout/orders/paypal 沙箱返回 404 Not Found
Posted
技术标签:
【中文标题】我的服务器调用 v2/checkout/orders/paypal 沙箱返回 404 Not Found【英文标题】:my server call v2/checkout/orders/ paypal sandbox return 404 Not Found 【发布时间】:2020-04-08 23:00:42 【问题描述】:1:我使用ios客户端创建订单,得到如下响应
货币代码:美元
金额:21.47
简短描述:时髦服装
意图:销售
可处理:已处理
显示:21.47 美元
确认:
client =
environment = sandbox;
"paypal_sdk_version" = "2.18.1";
platform = iOS;
"product_name" = "PayPal iOS SDK";
;
response =
"create_time" = "2019-12-16T12:12:48Z";
id = "PAYID-LX3XJQI4U759055JE198303J";
intent = sale;
state = approved;
;
"response_type" = payment;
详细信息:小计:12.98,运费:5.99,税:2.5
收货地址:(null)
发票编号:(空)
自定义:(空)
软描述符:(空)
收款人电子邮件:(空)
BN 码:(空)
商品:“1|破洞旧牛仔裤|4.99|USD|Hip-00037”
项目:'1|免费彩虹补丁|0.00|USD|Hip-00066'
商品:'1|长袖格子衬衫(不包括胡须)|7.99|USD|Hip-00291'
2:我可以在https://developer.paypal.com/developer/notifications/看到交易
sb-g8ehg 个人例子
您支付给 Doe John 的收据
16 De[移除。电话号码不允许]/td>
3:我的服务器端想要获取付款明细,但是 404
curl -v -X GET https://api.sandbox.paypal.com/v2/checkout/orders/PAYID-LX3XJQI4U759055JE198303J -H "Content-Type: application/json" -H "Authorization: Bearer A21AAHMxaNfgH67r9uGcKMtCHHMo-VDQHf4WGBEZIbzEtBo7_bSMXArvTYGEUub_gT3s2_XRCJJNbgdXTd9mmZiANBs2URVUg"
注意:不必要地使用 -X 或 --request,GET 已被推断出来。
正在尝试 173.0.82.78...
TCP_NODELAY 设置
连接到 api.sandbox.paypal.com (173.0.82.78) 端口 443 (#0)
ALPN,提供 h2
ALPN,提供 http/1.1
密码选择:ALL:!EXPORT:!EXPORT40:!EXPORT56:!aNULL:!LOW:!RC4:@STRENGTH
成功设置证书验证位置:
CA 文件:/etc/ssl/cert.pem
CApath:无
TLSv1.2 (OUT)、TLS 握手、客户端问候 (1):
TLSv1.2 (IN)、TLS 握手、服务器问候 (2):
TLSv1.2 (IN)、TLS 握手、证书 (11):
TLSv1.2 (IN)、TLS 握手、请求 CERT (13):
TLSv1.2 (IN),TLS 握手,服务器完成 (14):
TLSv1.2 (OUT)、TLS 握手、证书 (11):
TLSv1.2 (OUT)、TLS 握手、客户端密钥交换 (16):
TLSv1.2 (OUT),TLS 更改密码,客户端问候 (1):
TLSv1.2 (OUT),TLS 握手,完成 (20):
TLSv1.2 (IN),TLS 更改密码,客户端问候 (1):
TLSv1.2 (IN),TLS 握手,完成 (20):
使用 TLSv1.2 / AES256-SHA256 的 SSL 连接
ALPN,服务器不同意协议
服务器证书:
主题:C=US; ST=加利福尼亚; L=圣何塞; O=贝宝公司; OU=贝宝生产; CN=api.sandbox.paypal.com
开始日期:格林威治标准时间 2018 年 8 月 21 日 00:00:00
到期日期:格林威治标准时间 2020 年 8 月 20 日 12:00:00
subjectAltName:主机“api.sandbox.paypal.com”匹配证书的“api.sandbox.paypal.com”
发行人:C=US; O=DigiCert 公司; CN=DigiCert 全球 CA G2
SSL 证书验证正常。
GET /v2/checkout/orders/PAYID-LX3XJQI4U759055JE198303J HTTP/1.1
主机:api.sandbox.paypal.com
用户代理:curl/7.54.0
接受:/
内容类型:application/json
授权:承载 A21AAHMxaNfgH67r9uGcKMtCHHMo-VDQHf4WGBEZIbzEtBo7_bSMXArvTYGEUub_gT3s2_XRCJJNbgdXTd9mmZiANBs2URVUg
>
"name":"RESOURCE_NOT_FOUND","details":["issue":"INVALID_RESOURCE_ID","description":"指定的资源ID不存在,请检查资源ID重试。"] ,"message":"指定的资源不存在。","debug_id":"d59bbbad78a81","links":
【问题讨论】:
【参考方案1】:您使用的 SDK 似乎没有实现 v2/checkout/orders,因此当您请求 PAYID 时,它是 404 Not Found
也许 SDK 实现了 v1/payments 或 v2/payments
【讨论】:
是的,下面的是我的工作卷曲-v-x get api.sandbox.paypal.com/v1/payments/payment/… -h“内容类型:application / json”-h“授权:持票人a21aahp5hclgyokwjvybqyg4n98p8mqx2stgx6natjtk0-j8tndio_aoewevvok4r-tlpw7iejoyqdekiz3edci1tt4slzozw”跨度>以上是关于我的服务器调用 v2/checkout/orders/paypal 沙箱返回 404 Not Found的主要内容,如果未能解决你的问题,请参考以下文章
为啥我的 Windows CE 设备无法成功调用服务器的 REST 方法?