Как установить время автоматического выхода из системы в mochiweb? - PullRequest
0 голосов
/ 04 октября 2011

Я смотрю на исходный код mochiweb и вижу числа, которые проверяют время истечения cookie, которые не похожи на поведение сервера, который я унаследовал.mochiweb имеет 111 и 86417 (день плюс 17 секунд) в исходном коде, но похоже, что он делает это только через истечение срока действия cookie и это - в тестовом коде.(см. mochiweb_cookies.erl)

Сервер, на который я смотрю, рассчитывает время ожидания пользователя примерно через 10-15 минут, но нигде не вижу ни кода, который устанавливает значение cookie, ни яПуть к коду через источник mochiweb, который даже позволил бы мне установить его.

Есть идеи?

1 Ответ

3 голосов
/ 02 декабря 2011

Здесь действительно два вопроса: «Как у моего приложения истекает сессия?» и "Как мне установить cookie с mochiweb_cookies?" Только второй может быть разумно ответил без дополнительной информации.

Req:ok("text/plain",
       [mochiweb_cookies:cookie("session", "my-session-id", [{max_age, 86417}])],
       "you're logged in!")

mochiweb_cookies: cookie / 3 возвращает пару {"Set-Cookie", "headervalue"}, которая подходит в качестве значения в ResponseHeaders аргументах mochiweb_request:respond и mochiweb_request:ok.

Конечно, можно установить куки в mochiweb без использования модуля mochiweb_cookies, в конце концов, они всего лишь заголовки. Ваше приложение может устанавливать cookie, вручную создавая заголовок, или прокси или другая прикладная служба, размещенная в том же домене, может устанавливать cookie.

При этом, если это вообще возможно, следует избегать истечения срока действия файлов cookie для выхода из системы пользователей. Max-age - это просто подсказка браузеру прекратить отправку cookie-файлов по истечении этого времени. Браузер или злоумышленник всегда могут плохо себя вести и отправлять куки на неопределенный срок.

...