Я працюю над додатком PhoneGap із використанням сеансу сервера. Для обробки сеансу потрібні файли cookie. Крім того, слід обробляти і файли cookie з балансувача навантаження. Отож шляху тут немає. Як ви обробляєте файли cookie у своєму додатку PhoneGap?
Я вже здійснив деякі дослідження:
- Деякі кажуть, що обробка файлів cookie може залежати від того, що сервер не встановив файли cookie для невідомих агентів користувача (IIS): сеанс PhoneGap (файли cookie) на iOS
- У JavaScript файли cookie можна встановити за допомогою document.cookie = ..., але вони не зберігаються у PhoneGap і втрачаються. Перш ніж запускати запити xhr, це працює.
- Файли cookie можна отримати після запиту xhr за допомогою xhr.getResponseHeader ('Set-Cookie'). Але лише тоді, коли це фактично встановлено на сервері. На жаль, jQuery видаляє заголовок "Cookie".
- Властивість JavaScript document.cookie не призначається і не оновлюється після запитів (xhr).
- Деякі пропонують localStorage зберігати ідентифікатори сесій тощо. Але всі скрипти можуть отримати до нього доступ, і це може бути проблемою безпеки XSS. Файли cookie вирішують цю проблему за допомогою позначки httponly.
- iOS: Є деякі модифікації, які змінять поведінку webView для підтримки файлів cookie. Але вони, схоже, не працюють з iOS 6 і PhoneGap 2.5: https://groups.google.com/forum/?fromgroups=#!topic/phonegap/ZJE1nxX63ow
- Здається, файли cookie за замовчуванням увімкнені в AppDelegate.m (v2.5).