Jak poprawnie zdefiniować oauth2callback GAE?

TheKorzystanie z GAE / dekoratorów przewodnik mi to mówi„musisz dodać konkretną procedurę obsługi adresu URL do aplikacji, aby obsłużyć przekierowanie z serwera autoryzacji z powrotem do aplikacji”:

  def main():
    application = webapp.WSGIApplication(
       [
         ('/', MainHandler),
         ('/about', AboutHandler),
         (decorator.callback_path, decorator.callback_handler()),
       ],
       debug=True)
    run_wsgi_app(application)

Obecnie nie jestem w stanie prawidłowo tego ustawić. W rezultacie otrzymuję i widzę odpowiedź zwrotną HTTP 302 (gdy powinna zostać przechwycona przez procedurę obsługi) zamiast oczekiwanej odpowiedzi. Mam dwa pytania do rozwiązania:

Theoauth2client/appengine.py wysyłka w GAE 1.8.0 nie macallback_path atrybut i niecallback_handler() metoda, co powinniśmy zrobić? Bezpośrednie wiązanie('/oauth2callback', OAuth2Handler) zamiast(decorator.callback_path, decorator.callback_handler())?Co to oznaczamyapp.yaml? Czy dobrze jest zadeklarować nowy blok, taki jak:
- url: /oauth2callback
  script: oauth2client/appengine.py

Dzięki za pomoc! Oto mój obecny kod:

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

questionAnswers(1)

yourAnswerToTheQuestion