Проверка подлинности CherryPy на Facebook в Google Appengine - PullRequest
0 голосов
/ 28 января 2012

Я пытаюсь перенести этот образец facebook oauth 2.0 auth из webapp в cherrypyоднако он всегда возвращает значение None в self.current_user.Я думаю, что у меня проблемы с настройками куки здесь.какие-либо исправления?см. исходный код здесь

1 Ответ

0 голосов
/ 07 февраля 2012

Я думаю, что вы с подозрением относитесь к тому, как вы устанавливаете куки, вы правы, вы просто создаете куки (строку) и никогда не используете значение, вы должны использовать cherrypy.response.cookie, а не Cookie.BaseCookie, set_cookie должно быть так:

def set_cookie(name, value, domain=None, path="/", expires=None):
    """Generates and signs a cookie for the give name/value"""
    timestamp = str(int(time.time()))
    value = base64.b64encode(value)
    signature = cookie_signature(value, timestamp)
    cookie = cherrypy.response.cookie
    cookie[name] = "|".join([value, timestamp, signature])
    cookie[name]["path"] = path
    if domain: 
        cookie[name]["domain"] = domain
    if expires:
      cookie[name]["expires"] = email.utils.formatdate(expires,
                                                       localtime=False,
                                                       usegmt=True)
...