Экстремальный новичок, извиняйтесь заранее, я понятия не имею, что я делаю, но я действительно огляделся.Хранение файлов cookie в Google App Engine
Я загружаю несколько десятков страниц за формой входа и выполняю результаты, работая на GAE. Я бы хотел, чтобы каждая запись страницы и запись базы данных записывались в очередь задач. Когда я перешел на очередь задач, я понял, что у меня проблемы с сеансом.
Я создаю нож с помощью urllib2:
cj = cookielib.CookieJar()
session = urllib2.build_opener(urllib2.HTTPCookieProcessor(cj))
session.addheaders.append(('User-agent', 'Mozilla/4.0'))
login_data = urllib.urlencode({ 'username' : 'guest',
'password' : 'guest',
'Submit1' : 'Submit'})
resp = session.open(self.login_page, login_data, timeout=20)
self.session = session
Раньше я был только инстанцирование этого класса один раз в головной части вещей, создавая переменный экземпляр один сеанс для всех пользователей, а затем передать мое инстанцирование вокруг поддерживать контекст. Использование очереди задач Я не могу передать объекты, поэтому, когда мой обработчик запросов вызван, я не могу дать ему ссылку на открыватель или файл cookie.
Есть ли способ сохранить или передать открыватель или информацию о файлах cookie, чтобы я мог создать новый нож без входа в систему каждый раз? Могу ли я передавать информацию cookie через словарь заголовков для каждого обработчика? Что-то в memcache? Что именно мне нужно передать, чтобы вернуть файл cookie в действительный открыватель?
Огромное спасибо всем, кто пробирается сквозь выше.
Просто я понял, что такое рассол ... Я не понимал, что могу восстановить что-то вроде экземпляра класса из базы данных. Это очень круто. Я попробую поставить его на db и передать ссылку. – user1354036
@ user1354036 Просто не позволяйте власти все идти в вашу голову. ;) Есть некоторые вещи, которые хорошо подходят для рассола, вроде этого (по крайней мере, возможно), а другие - нет, например, данные пользователя. Лично я не думаю, что есть хорошая причина хранить куки в хранилище данных - ссылка не будет намного меньше, чем сам файл cookie. –