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

Метод options

Метод options применяется к экземпляру класса TestClient и отправляет OPTIONS-запрос по указанному URL. Первым параметром передаётся путь URL. Вторым параметром можно передать заголовки, данные или другие настройки запроса. Метод возвращает объект Response, из которого можно получить статус-код, заголовки и тело ответа. OPTIONS-запрос обычно используется для получения информации о поддерживаемых сервером HTTP-методах и CORS-настройках.

Синтаксис

client.options(url, **kwargs)

Пример

Давайте создадим простое приложение с обработчиком OPTIONS-запроса и проверим его через TestClient:

from fastapi import FastAPI from fastapi.testclient import TestClient app = FastAPI() @app.options('/items/') def options_items(): return {'allowed': 'GET, POST'} client = TestClient(app) res = client.options('/items/') print(res.status_code) print(res.json())

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

200 {'allowed': 'GET, POST'}

Пример

Давайте отправим OPTIONS-запрос с дополнительными заголовками:

from fastapi import FastAPI, Request from fastapi.testclient import TestClient app = FastAPI() @app.options('/items/') def options_items(request: Request): origin = request.headers.get('origin') return {'origin': origin} client = TestClient(app) res = client.options( '/items/', headers={'Origin': 'https://example.com'} ) print(res.json())

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

{'origin': 'https://example.com'}

Пример

Давайте проверим заголовок allow в ответе на OPTIONS-запрос:

<+python+> from fastapi import FastAPI, Response from fastapi.testclient import TestClient app = FastAPI() @app.options('/items/') def options_items(response: Response): response.headers['Allow'] = 'GET, POST, OPTIONS' return {} client = TestClient(app) res = client.options('/items/') print(res.headers['allow']) <-python+>

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

"GET, POST, OPTIONS"

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

  • класс TestClient,
    который используется для тестирования приложений FastAPI
  • метод get,
    который отправляет GET-запрос к приложению
  • метод head,
    который отправляет HEAD-запрос к приложению
  • метод request,
    который отправляет запрос с произвольным HTTP-методом
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить