Метод patch
Метод patch применяется к экземпляру класса FlaskClient, который возвращает метод test_client приложения Flask. Первым параметром передаётся путь URL, вторым - данные для отправки. После вызова Flask обрабатывает PATCH-запрос и возвращает объект TestResponse.
Синтаксис
client.patch(path, [data], [follow_redirects])
Пример
Давайте создадим тест и отправим PATCH-запрос на адрес '/user':
from flask import Flask, request
app = Flask(__name__)
@app.route('/user', methods=['PATCH'])
def user():
return 'patched'
client = app.test_client()
res = client.patch('/user')
print(res.status_code)
Результат выполнения кода:
200
Пример
Давайте передадим данные в теле PATCH-запроса и прочитаем их в обработчике:
from flask import Flask, request
app = Flask(__name__)
@app.route('/user', methods=['PATCH'])
def user():
return request.form['name']
client = app.test_client()
res = client.patch('/user', data={'name': 'abcde'})
print(res.get_data(as_text=True))
Результат выполнения кода:
'abcde'
Пример
Давайте отправим PATCH-запрос с JSON-данными и вернём их в ответе:
from flask import Flask, request, jsonify
app = Flask(__name__)
@app.route('/user', methods=['PATCH'])
def user():
data = request.get_json()
return jsonify(data)
client = app.test_client()
res = client.patch('/user', json={'name': 'abcde'})
print(res.get_json())
Результат выполнения кода:
{'name': 'abcde'}
Смотрите также
-
класс
FlaskClient,
который создаёт тестовый клиент приложения -
метод
put,
который выполняет PUT-запрос в тестах -
метод
delete,
который выполняет DELETE-запрос в тестах -
метод
get_json,
который возвращает JSON из ответа