Метод delete
Метод delete применяется к экземпляру класса TestClient
и отправляет DELETE-запрос по указанному пути.
Первым параметром передаётся путь URL.
Вторым параметром можно передать параметры строки запроса params,
заголовки headers, cookies cookies и другие аргументы,
которые поддерживает библиотека httpx.
Метод возвращает объект Response,
из которого можно прочитать статус-код, тело и заголовки ответа.
Синтаксис
client.delete(url, params=None, headers=None, cookies=None)
Пример
Давайте создадим приложение с DELETE-маршрутом и проверим его через тест-клиент:
<+python+>
from fastapi import FastAPI
from fastapi.testclient import TestClient
app = FastAPI()
@app.delete('/items/{item_id}')
def delete_item(item_id: int):
return {'item_id': item_id, 'deleted': True}
client = TestClient(app)
res = client.delete('/items/5')
print(res.status_code)
print(res.json())
<-python+>
Результат выполнения кода:
<+python+>
200
{'item_id': 5, 'deleted': True}
<-python+>
Пример
Давайте передадим параметры строки запроса через аргумент params:
<+python+>
from fastapi import FastAPI
from fastapi.testclient import TestClient
app = FastAPI()
@app.delete('/items')
def delete_items(name: str = 'abcde'):
return {'name': name, 'deleted': True}
client = TestClient(app)
res = client.delete('/items', params={'name': 'user'})
print(res.json())
<-python+>
Результат выполнения кода:
<+python+>
{'name': 'user', 'deleted': True}
<-python+>
Пример
Давайте передадим заголовки через аргумент headers и прочитаем их в обработчике:
<+python+>
from fastapi import FastAPI, Header
from fastapi.testclient import TestClient
app = FastAPI()
@app.delete('/items')
def delete_items(x_token: str = Header()):
return {'x_token': x_token}
client = TestClient(app)
res = client.delete('/items', headers={'x-token': 'abcde'})
print(res.json())
<-python+>
Результат выполнения кода:
<+python+>
{'x_token': 'abcde'}
<-python+>
Смотрите также
-
класс
TestClient,
который создаёт тестовый клиент для приложения FastAPI -
метод
get,
который выполняет GET-запрос в тестах -
метод
post,
который выполняет POST-запрос в тестах -
метод
request,
который выполняет произвольный HTTP-запрос в тестах