Код: Выделить всё
if (navigator.userAgent.indexOf('iPad') > -1) {
window.onpagehide = placeCookie
} else {
window.onbeforeunload = placeCookie
}
function placeCookie () {
if (isAuthenticated()) {
var cookie = 'cookieName=' + token + '; max-age=60'
if (env === 'prod') {
cookie += '; secure'
}
document.cookie = cookie
}
}
Код перезагрузки: window.location.reload(true)
Для разработки я использую Charles Proxy для анализа файлов cookie, а также проверки файлов cookie на сервере узла, поскольку инспектор Safari закрывается при перезагрузке страницы. Когда я снова открываю окно инспектора, я вижу, что файл cookie установлен в браузере, но ни сервер, ни Чарльз не видят этот файл cookie. Вот вставка файла cookie из инспектора Safari на iPad (который не виден серверу/charlesproxy):
Код: Выделить всё
Name Value Domain Path Expires
cookieName token localhost.charlesproxy.com / 7/10/2017, 11:23:13 PM 39
Кто-нибудь знает причину, по которой iOS не признает файл cookie? Возможно ли, что запрос делается на iOS до размещения файла cookie?
Пожалуйста, дайте мне знать, если я могу предоставить дополнительную информацию.
Подробнее здесь: https://stackoverflow.com/questions/450 ... and-chrome
Мобильная версия