2013-12-25 1 views
1

Я пытаюсь настроить страницу входа/выхода с помощью javascript для одностраничного приложения (pouchdb).Невозможно получить файл cookie AuthSession Couchdb через javascript

Получение и отправка файла authsession cookie через curl отлично работает, как описано в документации, однако, когда я пытаюсь воспроизвести его в javascript, var contType = AjaxRequest.getAllResponseHeaders(); alert (contType);

единственные параметры, которые я могу извлекать являются:

Сервер: CouchDB/1.5.0 (Erlang OTP/R16B01) Content-Type: Текст/равнину; charset = utf-8 Cache-Control: must-revalidate

Кому-нибудь удалось получить этот куки-файл сеанса и использовать его с javascript? спасибо, jl

+0

У меня была та же проблема. Я действительно вижу файл cookie в запросе, но есть некоторые странные вещи, которые я не могу объяснить подробно с участием CORS и куки. По-видимому, set-cookie игнорируется в моем случае, поскольку я использую localhost в качестве своего домена ... В этом есть что-то и корс, который устраняет cookie в javascript. Мое приложение является угловым/кордовым приложением. – TyMayn

ответ

0

Это хороший вопрос. Я не знаю, могу ли я ответить на это, но у меня есть другой способ этого. В самом браузере должен быть установлен файл cookie после запроса ajax.

https://github.com/carhartl/jquery-cookie

У меня был положительный опыт использования этого плагина JQuery для обработки AuthSession печенье из CouchDB логинов. $.cookie("AuthSession") обычно делает трюк.

2

AuthSession отмечен как HTTPOnly - то есть он будет only be exposed over HTTP(S) и не доступен для JavaScript (для предотвращения несанкционированного доступа).

Вызов/_session возвращает ответ 200, если пользователь аутентифицирован правильно или 401, если учетные данные неверны. В случае успеха (200 ответов) файл cookie AuthSession будет автоматически сохранен браузером и передан будущим запросам на URL-адрес CouchDB до тех пор, пока браузер/вкладка не будет закрыта или вы не сделаете запрос DELETE к/_session.

Вы должны иметь возможность реализовать страницу входа в систему, учитывая эти семантики, без непосредственного доступа к файлу cookie.

Смежные вопросы