我有简单的Android应用程序,其中用户从Google Fusion Tables与REST API获取数据。为此,我使用OAuth 2授权获取访问令牌和刷新令牌。我在我的应用程序中将显示登录屏幕以及同意屏幕的Web视图。我打算从Web视图获取访问令牌并将其用于进一步的API调用。我正在使用retrofit来执行我的http调用。我使用以下查询参数,
"client_id" = CLIENTID
"client_secret" = SECRET
"code" = 4/XXXXXXXXXX //Code got from redirect url
"grant_type" = "authorization_code"
"access_type" = "offline"
"approval_prompt" = "force"
"redirect_uri" = REDIRECT_URL
到目前为止这么好。但是,当我exceute张贴上面的查询参数的要求,我得到如下回应,
{
"access_token": "ya29.XXXXXXXXXXXXXX",
"token_type": "Bearer",
"expires_in": 3599,
"id_token": "XXXXXXXXXX"
}
问题
哪里是刷新令牌?我需要刷新令牌,因为我以后不能使用访问令牌通过应用程序进行API调用,并且我不希望用户每次都获取访问令牌。
我已经试过
我已经按照指示从this后,并试图从设置撤销许可申请。我也尝试过使用不同的Google帐户,以防出现一些许可问题,但仍然没有运气。我也尝试删除查询参数“approval_prompt”和“grant_type”,但也没有帮助。
对不起,我在写字时有错字。我编辑了问题。 “access_type = offline”查询已经存在! – Dexter