我遇到了以下问题,大概一个月了,我正在尝试使用以下接口验证应用内购买:https://developers.google.com/android-publisher/authorization
我遵循了文档中的每一步(从Chrome中用Postman Rest客户端做每件事),我可以检索一个accesstoken和一个刷新令牌,但每当我试图查询购买时,它会导致错误代码403访问未配置,但我在设置中配置it!
有没有人有主意?
发布于 2014-04-10 07:31:43
获取此API的accesstoken并非易事。This blog post帮助我开始了正确的方向,但我已经概述了我自己的过程,它不依赖于使用任何外部脚本来工作。具体步骤如下:
接口
每个步骤的详细信息如下:
获取客户端ID和密码
https://localhost。您不需要更改授权的JavaScript Origins.获取刷新令牌的
https://accounts.google.com/o/oauth2/auth?scope=https://www.googleapis.com/auth/androidpublisher&response_type=code&access_type=offline&redirect_uri=https://localhost&client_id=XXXXhttps://localhost/?code=4/k0TenvwICIgmBoQOazJy4_EnJr6-.clLqtp_vVAIbEnp6UAPFm0GASPqQigI
从该URL的后半部分复制代码,并使用wget将此代码转换为刷新标记;替换
wget --debug --post-data="grant_type=authorization_code&code=CODE&client_id=CLIENT_ID&client_secret=CLIENT_SECRET&redirect_uri=https://localhost" https://accounts.google.com/o/oauth2/token
获取访问令牌的
您将得到一个JSON字符串,其中包含一个一个小时有效的access_token。
使用访问令牌进行请求
获取自
https://www.googleapis.com/androidpublisher/v1.1/applications/PACKAGENAME/inapp/SKU/purchases/PURCHASETOKEN
具有包含访问令牌的Authorization标头,例如:
Authorization: Bearer ya29.1.AADtN_WoM4-4Fb1voFL-emcUWluijCzwvc9Z-FYM9SPvK03HCbGkdROJTVVPSLHK2IlVJQ
您还可以将访问令牌作为HTTP查询参数传递,例如
https://www.googleapis.com/androidpublisher/v1.1/applications/PACKAGENAME/inapp/SKU/purchases/PURCHASETOKEN?authorization_token=AUTHTOKEN
发布于 2014-05-30 19:54:32
我和你也有类似的问题。mmigdol的回答很有帮助,但对我没有帮助。我最终设法通过查看这里生成的链接解决了这个问题:https://developers.google.com/oauthplayground/
显然,Android publisher的范围
https://www.googleapis.com/auth/androidpublisher需要添加到请求授权代码的链接中(甚至在生成刷新令牌之前),方法是添加:
&scope=https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fandroidpublisher要获得以下信息:
https://accounts.google.com/o/oauth2/auth?redirect_uri=<YOUR_REDIRECT_URI>&response_type=code&client_id=<YOUR_CLIENT_ID>&scope=https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fandroidpublisher&approval_prompt=force&access_type=offlinehttps://stackoverflow.com/questions/21432626
复制相似问题