Метод options
Метод options применяется к экземпляру класса FlaskClient
и выполняет OPTIONS-запрос к приложению. Первым параметром
передаётся путь URL. Метод возвращает объект TestResponse,
из которого можно получить статус, заголовки и тело ответа.
Синтаксис
client.options(path, [**kwargs])
Пример
Давайте создадим приложение и отправим OPTIONS-запрос к корневому маршруту:
from flask import Flask
app = Flask(__name__)
@app.route('/', methods=['GET', 'POST', 'OPTIONS'])
def index():
return 'hello'
client = app.test_client()
res = client.options('/')
print(res.status_code)
print(res.headers.get('Allow'))
Результат выполнения кода:
200
'GET, POST, OPTIONS'
Пример
Давайте проверим OPTIONS-запрос на маршруте, который принимает только GET:
from flask import Flask
app = Flask(__name__)
@app.route('/user')
def user():
return 'user'
client = app.test_client()
res = client.options('/user')
print(res.status_code)
print(res.headers.get('Allow'))
Результат выполнения кода:
200
'GET, OPTIONS, HEAD'
Пример
Давайте отправим OPTIONS-запрос с дополнительными заголовками:
from flask import Flask
app = Flask(__name__)
@app.route('/abcde', methods=['GET', 'OPTIONS'])
def abcde():
return 'abcde'
client = app.test_client()
res = client.options('/abcde', headers={'X-Test': 'value'})
print(res.status_code)
print(res.headers.get('Allow'))
Результат выполнения кода:
200
'GET, OPTIONS'
Смотрите также
-
класс
FlaskClient,
который используется для тестирования приложения -
метод
get,
который отправляет GET-запрос в тестах -
метод
post,
который отправляет POST-запрос в тестах -
атрибут
status_code,
который хранит код состояния ответа