AJAX-запросы содержат те же куки, что и обычные запросы. Кроме того, вы можете отправлять любые аргументы, такие как идентификаторы сеанса, с помощью запроса AJAX.
На самом деле для сервера абсолютно не имеет значения, выполняется запрос через объект XmlHttpRequest или нет. Большинство фреймворков добавляют заголовок X-Requested-With: XMLHttpRequest
, но это совершенно необязательно.
Итак ... что бы вы ни использовали для передачи данных сеанса, просто убедитесь, что они также доступны для сценария, вызываемого вашим AJAX-запросом:
- Если у вас есть идентификатор сеанса, переданный через GET / POST, включите его в аргументы вашего запроса.
- Если файлы cookie необходимы, убедитесь, что они отправлены в файл. Если он находится в той же папке, что и текущий файл или его потомок, вы обычно в безопасности. Если он находится в другом (суб) домене, у вас могут возникнуть проблемы - не только с файлами cookie, но и с междоменным AJAX, который обычно не разрешен из-за того, что браузеры имеют политику того же происхождения.