Потребитель моего REST API говорит, что иногда я возвращаю ошибку 400 Bad Request
- The request sent by the client was syntactically incorrect.
.
Журналы моего приложения (Python/Flask), похоже, не фиксируют это, как и журналы моего веб-сервера/Nginx.
Изменить: я хотел бы попытаться вызвать 400 неверных запросов в Flask для целей отладки. Как я могу это сделать?
Следуя совету Джеймса, я добавил что-то похожее на следующее:
@app.route('/badrequest400')
def bad_request():
return abort(400)
Когда я вызываю это, фляга возвращает следующий HTML, который не использует строку «Запрос, отправленный клиентом, был синтаксически неверным»:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<title>400 Bad Request</title>
<h1>Bad Request</h1>
<p>The browser (or proxy) sent a request that this server could not understand.</p>
(Я не уверен, почему он не включает теги <body>
.
Мне кажется, что существуют разные варианты сообщения об ошибке 400. Например, если я установлю для файла cookie значение длины 50 000 (используя Interceptor с Postman), вместо этого я получу следующую ошибку от Flask:
<html>
<head>
<title>Bad Request</title>
</head>
<body>
<h1>
<p>Bad Request</p>
</h1>
Error parsing headers: 'limit request headers fields size'
</body>
</html>
Есть ли способ заставить Flask пройти через различные варианты ошибок 400?