我正在使用PayPal API向商家请求权限,以访问其帐户的某些部分。其中之一是TransactionSearch方法。
通常,只有在提供USER,PWD和SIGNATURE时才可以使用TransactionSearch。但是,使用PayPal的权限服务时,我无法从商人那里访问该信息。我仅有的信息包括:
一个请求令牌,
验证码,
访问令牌,
令牌秘密
生成的签名(我假设我正确生成了此签名)
使用此信息,我将以下X-PAYPAL-AUTHORIZATION
标头放在一起:X-PAYPAL-AUTHORIZATION:timestamp=1337848711,token=DmyRT4TygwxPvfNExkH29I53S1il6yTmsJFwXRT7jLjaYyezOfUmnQ,signature=sphzCP0H47JTDJS8uuMsqWHAIAo=
因此,在TransactionSearch
的情况下,如何使用上面的信息来获取所需的交易?我当然可以使用自己的USER
,PWD
和SIGNATURE
,但这即使我使用X-PAYPAL_AUTHORIZATION
标头也只能提供我自己的事务。我需要那些刚刚获得我许可的商人。
最佳答案
如果您代表第三方行事,则需要在数据请求中包含一个“主题”字段,并传递第三方商家的电子邮件。如果您已通过此商家进行身份验证,则应获取其信息。在Python中(很抱歉,没有PHP示例),这些是我作为数据(而不是标头)的一部分传入的字段。我的标题是空的。
return [('VERSION', self.api_version), # This is 84 for me.
('user', self.api_username), # This is *your* username.
('PWD', self.api_password), # This is *your* password
('SIGNATURE', self.api_signature), # This is *your* signature.
('SUBJECT', self.subject)] # This is the third party's email.
请注意,这根本不使用密钥,这与众不同。