Получение данных из обычного текста (без кодирования в форме) из запроса с использованием Flask - PullRequest
1 голос
/ 27 февраля 2020

Я новичок в Flask. Я пытаюсь выяснить, как получить тело запроса в виде строки, а не пары ключ: значение.

В java с использованием jax-rs это легко с помощью следующего:

@POST
@Path("/returnText")
@Consumes(MediaType.TEXT_PLAIN)
@Produces(MediaType.TEXT_PLAIN)
public String hello(String name)
{
    return "Hello " + name;
}

Я пытаюсь сделать то же самое, но вместо этого использую python + flask. У меня есть следующий код, но каждый раз, когда я его запускаю, он говорит, что мне не хватает параметра:

@app.route("/REST/message",methods=['POST'])
def message(name):
return "Hello " + name;

Должен ли я вместо этого использовать атрибут flask .request? и если да, какой атрибут я должен использовать для печати простого текста из тела запроса?

1 Ответ

1 голос
/ 27 февраля 2020

Попробуйте добавить заголовки

@app.route("/REST/message",methods=['POST'])
def message():
    headers = {"Content-Type": "text/plain","Accept":"text/plain"}
    return make_response('Hello ' + request.data.decode(),
                         200,
                         headers=headers)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...