查看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”
答案 0 :(得分:9)
确定。随机找到答案。必须使用“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"
答案 1 :(得分:3)
如果您正在使用他们的JSON API,则范围可以是数组。