我正在编写一个访问Adwords API的独立应用程序。oauth2身份验证和授权工作正常。
我的问题是,我想保存refreshtoken在一个文本文件,并使用它直接下次我运行应用程序来恢复我的凭据。刷新令牌应该在14天内有效,所以恢复访问凭据是非常好的。
我还没有找到一个有效的例子。有人能帮忙吗?
refresh token
与授权令牌没有太大区别。OAuth2.0有几个流可以用来访问服务器。常见的(也是最节省的)流程是所谓的授权码流程(详细信息在这里)。
中,当用户第一次想要使用您的应用程序时,您的应用程序向授权服务器请求authorization code
。当用户登录并授予您的应用程序对服务的访问权限时,他将通过网站获得authorization code
。您的应用程序将此代码发送到授权服务器,以便获得第一个access token
(以及refresh token
)。这是相同的服务器,您需要发送refresh token
到。
POST /o/oauth2/token HTTP/1.1
Host: accounts.google.com
Content-Type: application/x-www-form-urlencoded
client_id=YOUR_CLIENT_ID_HERE&
client_secret=YOUR_CLIENT_SECRET_HERE&
refresh_token=THE_REFRESH_TOKEN_HERE&
grant_type=refresh_token
如果请求是有效的,服务器将用一个新的Access Token
响应。在这里你可以找到更多关于你可以提出的具体请求的信息。
请记住,每个令牌(访问和刷新令牌)都必须保存。最好的方法是加密保存,并且在发送令牌时只使用POST请求和https。但这不是你的问题。
希望我能帮到你。