Запрос content-type
- application/json
, но я хочу получить байты тела запроса. Flask автоматически преобразует данные в json
. Как получить тело запроса?Как получить байты тела запроса в Flask?
ответ
Вы можете кодировать свой ответ на определенный набор символов, если это то, что вы ищете
from flask import request
Python3
bytes(request.data, "utf8")
python2
request.data("utf8")
Я стараюсь это:
request.input_stream.seek(0)
print request.input_stream.read()
Как правило, это плохая идея для чтения из 'input_stream' напрямую, так как она не гарантируется, что ее можно искать и не читать без ограничений (в зависимости от реализации WSGI и данных запроса). 'stream' является более безопасным, но его следует избегать, поскольку он истощает поток, предотвращающий правильное заполнение запроса. – davidism
Вы можете получить данные, не связанные с формой, по телефону request.get_data()
. Вы можете получить данные анализируемой формы, обратившись к request.form
и request.files
.
Однако порядок, в котором вы получаете доступ к этим двум, изменит то, что возвращается с get_data
. Если вы сначала его вызовете, он будет содержать полный орган запроса, включая данные необработанной формы. Если вы назовете его вторым, оно будет пустым, и будет заполнено form
. Если требуется согласованное поведение, вызовите request.get_data(parse_form_data=True)
.
Вы можете получить тело, обработанное как JSON, используя request.get_json()
, но это не происходит автоматически, как ваш вопрос.
Для получения дополнительной информации см. Документы на странице dealing with request data.
- 1. Как получить буфер тела запроса?
- 2. Прочитать первые байты тела, когда «Максимальная длина запроса превышена»
- 3. Flask-RESTPlus - Как получить аргументы запроса?
- 4. Flask-restplus, как публиковать без тела
- 5. Как я могу получить необработанные байты запроса в WCF?
- 6. Как получить точные байты?
- 7. aiohttp скачать только первые n-байты тела
- 8. Экспресс Невозможно получить значение тела запроса
- 9. JavaScript запрос запроса тела
- 10. Flask - как получить параметры строки запроса в параметрах маршрута
- 11. Как получить параметры тела запроса в magento 2.0
- 12. Как получить ключи тела запроса в узле js
- 13. Как я могу получить данные тела запроса HTTP в codeigniter?
- 14. В Apigility, как получить доступ к содержимому тела запроса DELETE
- 15. Как установить класс запроса в Flask?
- 16. Сохранение запроса тела в JMeter
- 17. CXF RestFul Service - Получить параметры тела тела
- 18. Как получить данные, полученные в запросе Flask
- 19. Как получить байты из UnsafeMutableRawPointer?
- 20. httpclient 4 как получить байты
- 21. Multiple ошибки тела запроса
- 22. Stream.CopyTo - Как получить отправленные байты?
- 23. Как получить текущую длину тела ответа?
- 24. Атрибуты тела доступа запроса узла
- 25. Как получить данные GETted json в Flask
- 26. Как получить необработанные байты от querystring
- 27. Получить параметр из тела запроса в службе данных WCF/ADO.NET
- 28. Как получить байты файлов в заданном диапазоне?
- 29. Как получить байты в секунду при загрузке?
- 30. Как получить байты управляющего символа в Java
Почему вы думаете, что Flask автоматически преобразует тело запроса в JSON? Это определенно не делает, хотя в нем есть способ сделать это вручную. – davidism