Como definir adequadamente o oauth2callback do GAE?
oUsando o GAE / Decorators guia me diz que"você precisa adicionar um manipulador de URL específico ao seu aplicativo para lidar com o redirecionamento do servidor de autorização de volta ao seu aplicativo":
def main():
application = webapp.WSGIApplication(
[
('/', MainHandler),
('/about', AboutHandler),
(decorator.callback_path, decorator.callback_handler()),
],
debug=True)
run_wsgi_app(application)
Atualmente, não consigo configurar isso corretamente. Como resultado, recebo e vejo a resposta de retorno de chamada HTTP 302 (embora deva ser capturada pelo manipulador) em vez da resposta que estou esperando. Eu tenho duas perguntas para resolver isso:
ooauth2client/appengine.py
envio no GAE 1.8.0 não temcallback_path
atributo e nãocallback_handler()
método, o que devemos fazer? Ligar diretamente('/oauth2callback', OAuth2Handler)
ao invés de(decorator.callback_path, decorator.callback_handler())
?O que isso implica paramyapp.yaml
? É certo declarar um novo bloco como:- url: /oauth2callback script: oauth2client/appengine.py
Obrigado pela ajuda! Aqui está meu código atual:
myapp.py
class UpdatePage(webapp2.RequestHandler):
def get(self):
playlist_id = self.youtube_create_playlist()
...
@decorator.oauth_required
def youtube_create_playlist(self):
http = decorator.http()
request = youtube.playlists().insert(...)
response = request.execute(http=http)
return response["id"]
...
update = webapp2.WSGIApplication([
('/update', UpdatePage),
('/oauth2callback', OAuth2Handler)
],
debug=True)
app.yaml
application: myapp
version: 1
runtime: python27
api_version: 1
threadsafe: false
handlers:
- url: /
static_files: index.html
upload: index.html
- url: /oauth2callback
script: oauth2client/appengine.py
- url: /update
script: myapp.update