6

查看RequestPermissions API,它说范围应该是一个字符串。但是,我一直未能找到如何指定多个范围(特别是 EXPRESS_CHECKOUT 和 REFUND)。逗号分隔、分号,甚至使用他们的 NVP 列表语法都不起作用。CURL 示例将不胜感激。

逗号分隔的示例...

curl -s --insecure -H 
"X-PAYPAL-SECURITY-USERID: API_USERNAME" 
-H "X-PAYPAL-SECURITY-PASSWORD: API_PASSWORD" 
-H "X-PAYPAL-SECURITY-SIGNATURE: API_SIGNATURE" 
-H "X-PAYPAL-REQUEST-DATA-FORMAT: NV" 
-H "X-PAYPAL-RESPONSE-DATA-FORMAT: NV" 
-H "X-PAYPAL-APPLICATION-ID: APP-80W284485P519543T" 
https://svcs.sandbox.paypal.com/Permissions/RequestPermissions -d 
"requestEnvelope.errorLanguage=en_US&scope=EXPRESS_CHECKOUT,REFUND&callback=http://my/callback"

当我提出该请求时,我返回“无效的请求参数范围,值为 EXPRESS_CHECKOUT,REFUND”

4

2 回答 2

10

行。随机找到答案。范围变量必须使用“scope(0)=SCOPE_1&scope(1)=SCOPE_2...”来设置

所以,cURL 请求看起来像这样......

curl -s --insecure -H 
"X-PAYPAL-SECURITY-USERID: API_USERNAME" 
-H "X-PAYPAL-SECURITY-PASSWORD: API_PASSWORD" 
-H "X-PAYPAL-SECURITY-SIGNATURE: API_SIGNATURE" 
-H "X-PAYPAL-REQUEST-DATA-FORMAT: NV" 
-H "X-PAYPAL-RESPONSE-DATA-FORMAT: NV" 
-H "X-PAYPAL-APPLICATION-ID: APP-80W284485P519543T" 
https://svcs.sandbox.paypal.com/Permissions/RequestPermissions -d 
"requestEnvelope.errorLanguage=en_US&scope(0)=EXPRESS_CHECKOUT&scope(1)=REFUND&callback=http://my/callback"
于 2012-07-16T20:21:58.893 回答
3

如果您使用他们的 JSON API,范围可以是一个数组。

于 2014-01-22T23:57:07.937 回答