При попытке получить текст добавленных комментариев я получаю ошибку ключа в flask.request.form с помощью следующей команды curl. Я пытаюсь распечатать flask.request.form, но он был пуст. Как это исправить?
команда curl для добавления нового комментария:
curl -ib cookies.txt
--header 'Content-Type: application/json'
--request POST
--data '{"text":"Comment sent from curl"}'
http://localhost:8000/api/v1/p/3/comments/
ОШИБКА:
werkzeug.exceptions.BadRequestKeyError: 400 Bad Request: The browser (or proxy) sent a request that this server could not understand.
KeyError: 'text'
Мой комментарий obj:
<form id="comment-form">
<input type="text" value=""/>
</form>
Мой Python-файл flask.api, который возвращает новый словарь комментариев:
@app.route('/api/v1/p/<int:postid>/comments/', methods=["POST"])
def add_comment(postid):
db = model.get_db()
owner = flask.session["username"]
query = "INSERT INTO comments(commentid, owner, postid, text, created) VALUES(NULL, ?, ?, ?, DATETIME('now'))"
db.execute(query, (owner, postid, flask.request.form["text"]))
last_id = db.execute("SELECT last_insert_rowid()").fetchone()["last_insert_rowid()"]
get_newest_comment_query = "SELECT * FROM comments WHERE commentid = ?"
comment = db.execute(get_newest_comment_query, (last_id,)).fetchone()
print('get comment: ', comment)
return flask.jsonify(comment), 201