2

我正在与OAuth2Decorator()Pytgon 合作,我正处于那个阶段,我仍然不确定 App Engine 的某些事情。该文档未提供任何信息,或者我根本无法遵循它。所以:

OAuth2Decorator() 是否存储用户凭据?

OAuth2Decorator() 是否会自动检索新令牌?

考虑以下示例:

decorator = OAuth2Decorator(...)
service = build("drive", "v2")

class AppHandler(BaseHandler):
    @decorator.oauth_aware
    def get(self):
        if decorator.has_credentials():
            init = service.files().list().execute(decorator.http())
            items = init['items']
            context = {'data': getitems(items)}
            self.render_response('index.html',**context)
        else:
            url = decorator.authorize_url()
            self.redirect(url)
4

1 回答 1

3

凭据作为 CredentialsModel 存储在数据存储中。

如果请求的访问是“离线”(我相信这是默认设置),那么将在临时访问令牌旁边存储一个“刷新令牌”。如果一个请求是用一个封装了凭证的 Http 客户端发出的,那么在收到一个表明访问令牌已经过期的响应时,客户端会自动请求获取一个新的访问令牌,然后将用新的请求重试原始请求访问令牌,然后将存储在过期令牌的位置。

于 2013-05-10T19:47:18.697 回答