2015-05-04 44 views
1

我在連接到GMail API的Google App Engine上運行應用程序。一般來說,這一切都很好,但我注意到,如果我開始一個全新的會話,授權會要求授權兩次。一旦從Google App Engine獲得(請參閱下圖),並按照我的預期一次通過常規「同意」屏幕。什麼是啓動第一個授權,有什麼辦法可以擺脫它?GMail API:需要驗證兩次

screenshot

我的授權碼:

decorator = OAuth2Decorator(client_id=settings.CLIENT_ID, 
        client_secret=settings.CLIENT_SECRET, 
        scope=settings.SCOPE) 

class gmailAuth(webapp2.RequestHandler): 
@decorator.oauth_aware 
def get(self): 
    if decorator.has_credentials(): 
     self.response.out.write('success') 
    else: 
     self.redirect(decorator.authorize_url()) 
+0

如果您自己在做oauth,則不應使用appengine頁面安全設置。 –

+0

不知道我是否明白你的意思。這將如何轉化爲上面的代碼? – Vincent

+0

對不起,我現在看不太多,但它似乎問題是你已經配置頁面使用appengine用戶服務的身份驗證,但你也手動授權的範圍。 –

回答

0

我已經想通了@ decorator.oauth_aware指的是谷歌帳戶的API,這我不使用。這是導致屏幕出現的原因。這意味着,因爲我正在使用webapp2身份驗證,所以我將不得不引用非GAE特定的API身份驗證。