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

Метод request

Метод request применяется к экземпляру класса TestClient и выполняет HTTP-запрос к тестируемому приложению FastAPI. Первым параметром передаётся HTTP-метод в виде строки, например 'GET' или 'POST'. Вторым параметром передаётся путь URL. Дополнительно можно передать параметры запроса, тело, заголовки и куки. Метод возвращает объект ответа, у которого доступны статус-код, заголовки и тело в виде JSON.

Синтаксис

client.request(method, url)

Пример

Давайте выполним GET-запрос к корневому маршруту:

<+python+> from fastapi import FastAPI from fastapi.testclient import TestClient app = FastAPI() @app.get('/') def index(): return {'text': 'hello'} client = TestClient(app) res = client.request('GET', '/') print(res.status_code) print(res.json()) <-python+>

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

200 {"text": "hello"}

Пример

Давайте выполним POST-запрос с телом в формате JSON:

<+python+> from fastapi import FastAPI from fastapi.testclient import TestClient from pydantic import BaseModel app = FastAPI() class User(BaseModel): name: str @app.post('/user') def create_user(user: User): return {'name': user.name} client = TestClient(app) res = client.request('POST', '/user', json={'name': 'abcde'}) print(res.status_code) print(res.json()) <-python+>

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

200 {"name": "abcde"}

Пример

Давайте выполним DELETE-запрос с параметром в URL:

<+python+> from fastapi import FastAPI from fastapi.testclient import TestClient app = FastAPI() @app.delete('/user/{name}') def delete_user(name: str): return {'deleted': name} client = TestClient(app) res = client.request('DELETE', '/user/abcde') print(res.status_code) print(res.json()) <-python+>

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

200 {"deleted": "abcde"}

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

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