Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

Использовать ифрейм.




Ифрейм является полноценным окном браузера. В нём должна быть доступна вся функциональность, в том числе cookie. Как браузер решает, что ифрейм «сторонний» и нужно запретить для него и его скриптов установку cookie? Критерий таков: «в ифрейме нет навигации». Если навигация есть, то ифрейм признаётся полноценным окном.

Например, в сторонний iframe можно сделать POST. И тогда, в ответ на POST, сервер может поставить cookie. Или прислать документ, который это делает. Ифрейм, в который прошёл POST, считается родным и надёжным.

Popup-окно

Другой вариант — использовать popup, то есть при помощи window.open открывать именно окно со стороннего домена, и уже там ставить cookie. Это тоже работает.

Редирект

Ещё одно альтернативное решение, которое подходит не везде – это сделать интеграцию со сторонним доменом, такую что на него можно сделать редирект, он ставит cookie и делает редирект обратно.

Дополнительно

· На Cookie наложены ограничения:

o Имя и значение (после encodeURIComponent) вместе не должны превышать 4кб.

o Общее количество cookie на домен ограничено 30-50, в зависимости от браузера.

o Разные домены 2го уровня полностью изолированы. Но в пределах доменов 3го уровня куки можно ставить свободно с указанием domain.

o Сервер может поставить cookie с дополнительным флагом HttpOnly. Cookie с таким параметром передаётся только в заголовках, оно никак не доступно из JavaScript.

· Иногда посетители отключают cookie. Отловить это можно проверкой свойстваnavigator.cookieEnabled

 

 

if (!navigator.cookieEnabled) { alert('Включите cookie для комфортной работы с этим сайтом');}

Что такое куки (cookie)?

Куки - это небольшой объем данных, которые хранятся вэб браузером. Они позволяют Вам сохранять определенную информацию о пользователе и получать ее каждый раз, когда он посещает Вашу страницу. Каждый пользователь имеет свой собственный уникальный набор куков.

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

Свойство document.cookie.

В JavaScript куки доступны с помощью свойства cookie объекта document. Создать куки можно следующим образом:

document.cookie = "name=значение; expires=дата; path=путь; domain=домен; secure";

... и получить весь сохраненый набор куков так:

var x = document.cookie;

Давайте рассмотрим сохранение и получение куков более подробно.

Сохранение куки

Для сохранения куки нужно присвоить document.cookie текстовую строку, которая содержит свойства куки, которые мы хотим создать:

document.cookie = "name=значение; expires=дата; path=путь; domain=домен; secure";

Свойства описаны в таблице:

Свойство Описание Пример
name=значение Устанавливает имя куки и его значение. username=Вася
expires=дата Устанавливает дату истечения срока хранения куки. Дата должна быть представлена в формате, который возвращает метод toGMTString() объекта Date. Если значение expires не задано, куки будет удалено при закрытии браузера. expires= 13/06/2003 00:00:00
path=путь Данная опция устанавливает путь на сайте, в рамках которого действует куки. Получить значение куки могут только документы из указанного пути. Обычно данное свойство оставляют пустым, что означает что только документ установивший куки может получит доступ к нему. path=/demo/
domain=домен Данная опция устанавливает домен, в рамках которого действует куки. Получить значение куки могут только сайты из указанного домена. Обычно данное свойство оставляют пустым, что означает, что только домен установивший куки может получит доступ к нему. domain=ruseller.com
secure Данная опция указывает браузеру, что для пересылки куки на сервер следует использовать SSL. Очень редко используется. secure

Давайте посмотрим пример установки куки:

document.cookie = "username=Вася; expires=15/02/2011 00:00:00";

Данный код устанавливает куки username, и присваивает ему значение "Вася", которое будет храниться до 15-го февраля 2011 года (используется Европейский формат времени!).

var cookie_date = new Date (2003, 01, 15);document.cookie = "username=Вася; expires=" + cookie_date.toGMTString();

Данный код выполняет точно такое же действие, как и предыдущий пример, но для установки даты используется метод Date.toGMTString(). Учтите, что нумерация месяца в объекте Date начинается с 0, то есть февраль - это 01.

document.cookie = "logged_in=yes";

Данный код устанавливает куки logged_in, и присваивает ему значение "yes". Так как атрибут expires не установлен, то куки удалится при закрытии браузера.

var cookie_date = new Date (); // Текущая дата и времяcookie_date.setTime (cookie_date.getTime() - 1);document.cookie = "logged_in=; expires=" + cookie_date.toGMTString();

Данный код устанавливает куки logged_in и присваивает строку хранения значение времени за одну секунду перед текущим - такая операция приведет к немедленному удалению куки. Ручной способ удалить куки!

Перекодирование значения куки!

Следует перекодировать значение куки для корректного хранения и отображения таких символов как пробел и двоеточие. Такая операция гарантирует, что браузер корректно воспримет значение. Перекодирование лекго выполняется функцией JavaScript escape(). Например:

document.cookie = "username=" + escape("Вася Пупкин") + "; expires=15/02/2003 00:00:00";
Поделиться:





Читайте также:

PS: По желанию студента на практических занятиях можно использовать данные повседневных жизненных ситуаций и реально существующих предприятий.
Q Какие еще приемы можно использовать для оценки слуховой асимметрии?
В результате изучения дисциплины студент должен знать, уметь применять и использовать следующее.
Власть - способность использовать свое положение или силу, чтобы заставить или принудить кого-то выполнить вашу волю, даже если человек предпочел бы этого не делать.
Возможно ли использовать УЭК за границей?
Вот несколько самых лучших стратегических советов, как использовать всю мощь подсознания для реализации соей мечты.
Для решения использовать модель «Платежная матрица».
Для решения этих задач следует использовать формулу Пуазейля
Для того чтобы последовательно использовать Первый Тип Поведения, вы должны поддерживать состояние эгоцентричного безразличия.
Если все таки использовать формулу Ланжевена, то предполагается упругое столкновение легкого иона с тяжелой молекулой .






Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...