Может ли скрипт, вызванный XHR, ссылаться на $ _COOKIE? - PullRequest
0 голосов
/ 11 апреля 2010

Быстро да / нет - я создаю AJAX-приложение, и некоторые скрипты требуют аутентификации. Могу ли я прочитать $_COOKIE['username'] и $_COOKIE['password'] на сервере, если скрипт PHP был вызван через XHR, будь то $.get() или $.post()?

Дополнительный вопрос: Может ли он также устанавливать куки? Это считается «хорошей практикой»?

Ответы [ 2 ]

1 голос
/ 11 апреля 2010

Да. Они будут приходить через заголовки HTTP-запросов для всех запросов, соответствующих домену cookie.

Вы можете положиться на переменные сеанса PHP и cookie для этих запросов.

Вы также можете установить куки (мы делаем это с помощью формы входа Ajax на нашем сайте). Я не думаю, что есть какие-либо проблемы с этим, ни технически, ни философски.

1 голос
/ 11 апреля 2010

Cookies отправляются в заголовках HTTP-запросов. Независимо от типа запроса (например, GET / POST / и т. Д.), Если он использует протокол HTTP (или HTTPS), тогда могут использоваться заголовки cookie. Это улица с двусторонним движением ... куки отправляются в заголовках на сервер (заголовок Cookie:), а сервер устанавливает куки в заголовках (заголовок Set-Cookie:).

Это означает, что запросы Ajax / XHR в порядке, так как в основе их лежат просто запросы HTTP. Все современные браузеры будут отправлять файлы cookie вместе со своими Ajax-запросами и в результате принимать все входящие файлы cookie. Это означает, что для вашего принимающего PHP-скрипта $_COOKIE будет содержать файлы cookie как обычно, если таковые были доступны.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...