РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
67 of 252 menu

Атрибут is_ajax

Атрибут is_ajax применяется к объекту запроса request и показывает, был ли запрос отправлен асинхронно через JavaScript. Значение равно True, если в заголовке X-Requested-With передано значение 'XMLHttpRequest'. В остальных случаях возвращается False. Атрибут удобно использовать для выбора формата ответа: отдать JSON для AJAX-запроса или полноценную HTML-страницу для обычного.

Синтаксис

request.is_ajax

Пример

Давайте проверим значение атрибута для обычного запроса:

from bottle import Bottle, request app = Bottle() @app.route('/') def index(): return str(request.is_ajax)

Результат выполнения кода:

"False"

Пример

Давайте отдадим разный ответ в зависимости от того, является ли запрос AJAX-запросом:

from bottle import Bottle, request app = Bottle() @app.route('/user') def user(): if request.is_ajax: return 'user' else: return 'user page'

Результат выполнения кода для обычного запроса:

user page

Результат выполнения кода для AJAX-запроса:

user

Пример

Давайте отправим AJAX-запрос с заголовком X-Requested-With и проверим ответ:

import requests res = requests.get( 'http://localhost:8080/user', headers={'X-Requested-With': 'XMLHttpRequest'} ) print(res.text)

Результат выполнения кода:

"user"

Смотрите также

  • класс Request,
    который представляет объект запроса
  • атрибут is_xhr,
    который также определяет AJAX-запрос
  • атрибут headers,
    который хранит заголовки запроса
  • атрибут query,
    который хранит параметры строки запроса
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить