Как мне войти в систему, используя repoze.who? - PullRequest
4 голосов
/ 16 ноября 2010

У меня есть рабочий файл repoze.who / what (в приложении Pylons).Теперь я хочу автоматически регистрировать новых пользователей после регистрации без необходимости использовать форму входа.Я просмотрел документы и исходный код repoze.who и, может быть, мне его просто не хватает, но я не могу узнать, как настроить вошедшего в систему пользователя из кода без запроса нового сообщения через промежуточное ПО.Возможно ли это?

1 Ответ

2 голосов
/ 04 апреля 2011

Я был с подобной проблемой все утро, и вот что я нашел: Вы должны знать, что сейчас есть две версии repoze.who (1 и 2):

В версии 1.x:

rememberer = request.environ['repoze.who.plugins']['cookie']
identity = {'repoze.who.userid': user.username}
response.headerlist = response.headerlist + \
        rememberer.remember(request.environ, identity) 

В v 2.x (это проще, потому что он предоставляет и API):

from repoze.who.api import get_api

who_api = get_api(request.environ)
creds = {}
creds['login'] = yourusername
creds['password'] = yourpassword
authenticated, headers = who_api.login(creds)

Ресурсы: Для v1: http://www.deanlee.cn/programming/repoze-who-perform-login-programmatically/ Для версии 2: http://docs.repoze.org/who/2.0/api.html

...