2013-10-11 7 views
0

Я следую за this учебным пособием, чтобы узнать, как получить логин OAuth2.0 на моем сайте, и у меня возникли некоторые проблемы. Мой сайт зарегистрирован в GAE, и у меня есть мой идентификатор клиента. Я также pip install ed google-api-python-client. Однако я не знаю, что импортировать в мой проект. У меня две страницы в моем приложении. Один, который обрабатывает авторизацию, и тот, который на самом деле имеет страницу.Что такое «импорт» для GAE OAuth2.0?

authorize.py

import cgi, webapp2 
from google.appengine.api import users 

LOGIN_PAGE_HTML="""\ 
<html> 
    <body> 
    <input type="submit" method="post" action="/AuthorizeUser"/> 
    </body> 
</html> 
""" 

class LoginPage(webapp2.RequestHandler): 
    def get(self): 
    self.response.write(LOGIN_PAGE_HTML) 

class AuthorizeUser(webapp2.RequestHandler): 
    def post(self): 
    state = ''.join(random.choice(string.ascii_uppercase + string.digits)for x in xrange(32)) 
    session['state'] = state 
    response = make_response('/LandingPage', 
          CLIENT_ID='MY ID', 
          STATE=state 
          APPLICATION_NAME='Summit Tech Help')) 
    if request.args.get('state','') != session['state']: 
     response = make_response(json.dumps('Invalid state parameter.'), 401) 
     response.headers['Content-Type'] = 'application/json' 
     return response 






application = webapp2.WSGIApplication([ 
    ('/',LoginPage), 
    ('/AuthorizeUser',AuthorizeUser), 
], debug=True) 

landing.py

import cgi, webapp2 
from google.appengine.api import mail 

LANDING_PAGE_HTML="""\ 
<html> 
    <body> 
     <p>test</p> 
    </body> 
</html> 

""" 

class LandingPage(webapp2.RequestHandler): 
    def get(self): 
     self.response.write(LANDING_PAGE_HTML) 

application = webapp2.WSGIApplication([ 
('LandingPage',LandingPage), 
],debug=True) 

Мои app.yaml имеет '-url: /.*' установлен script:authorize.application

Любая помощь будет высоко ценится!

~ Carpetfizz

+0

Вы пытаетесь добавить стороннюю библиотеку (OAuth2.0) в Appengine. Может быть, ответы на эти вопросы могут помочь. http://stackoverflow.com/questions/4863557/how-do-i-manage-third-party-python-libraries-with-google-app-engine-virtualenv – Jayesh

ответ

0

использовать 3-й модуль партии вы должны импортировать его в приложение, если это то, что вы хотели спросить, также не проверить эту ссылку, чтобы использовать external libraries in gae.

Вы можете проверить это example app for using Oauth2.0 in GAE