![]() |
Модераторы: korob2001, ginnie |
![]() ![]() ![]() |
|
artem78 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 4 Регистрация: 15.5.2015 Репутация: нет Всего: нет |
Подскажите как можно осуществить, чтобы с одним экземпляром LWP::UserAgent можно было работать из нескольких потоков и чтобы у них была общая переменная с куками? Если делать так, то будет ошибка Invalid value for shared scalar.
|
|||
|
||||
Nab |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 582 Регистрация: 25.3.2006 Где: Kiev Репутация: 26 Всего: 37 |
Может лучше стоит использовать методы save($file), load($file) модуля HTTP::Cookies.
-------------------- Чтобы правильно задать вопрос нужно знать больше половины ответа... Perl Community FREESCO in Ukraine |
|||
|
||||
artem78 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 4 Регистрация: 15.5.2015 Репутация: нет Всего: нет |
Записалась в переменную одна кука, вызываю метод save, в файл записывется #LWP-Cookies-1.0 и больше ничего.
|
|||
|
||||
noize |
|
|||
![]() 5.18.2 ![]() Профиль Группа: Участник Сообщений: 89 Регистрация: 10.7.2010 Где: СПб Репутация: 3 Всего: 3 |
Используйте форки + какой-нибудь IPC::Shareable или redis для хранения кеша(кукисов) между процессами
|
|||
|
||||
Nab |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 582 Регистрация: 25.3.2006 Где: Kiev Репутация: 26 Всего: 37 |
По моему тут надо по другому на задачу взглянуть.
Если кука нужна чтоб сделать кучу запросов после авторизации, то и делайте авторизацию в начальном потоке, а потом форкайтесь на солько потоков сколько нужно с уже готовой кукой. Смысл в том, что получение куки для параллельных задач проще сделать в самом начале а потом уже делить на под-задачи. А вот если задача не делиться, то и шарить куку смысла нет. Когда-то я делал одну вещь с жестким контролем авторизации: там кука менялась с каждым запросом, соответственно задача к примеру автоматизировать запросы к моему сервису могла решаться только последовательно, никаких форков или еще чего. Так что может опишите задачу более широко. Это сообщение отредактировал(а) Nab - 6.6.2015, 11:24 -------------------- Чтобы правильно задать вопрос нужно знать больше половины ответа... Perl Community FREESCO in Ukraine |
|||
|
||||
![]() ![]() ![]() |
Правила форума "Perl" | |
|
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, korob2001, sharq. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Perl: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |