我正在开发一个小程序,它将通过curl获得的数据插入到MySQL数据库中。不幸的是,我没有找到与我的问题类似的东西,因此,如果您有什么想法-请指出我。这是我到目前为止尝试过的
import os
import pymysql
from flask import Flask, request
app = Flask(__name__)
db = pymysql.connect("127.0.0.1","meeting_admin","password","rooms")
cur = db.cursor()
@app.route('/book_room', methods = ['POST'])
def book_room():
try:
room = request.form['room']
book_date = request.form['book_date']
booked_by = request.form['booked_by']
cur.execute("INSERT INTO booked_rooms(room, book_date, booked_by)
VALUES ('%c', '%d', '%s')",(room, book_date, booked_by))
db.commit()
cur.close()
return "OK\n", 200
except:
db.rollback()
return "Smth went wrong", 500
db.close()
if __name__ == '__main__':
app.run()
curl命令为:
curl -H "Content-type: application/json" -X POST /
http://127.0.0.1:5000/book_room -d /
'{room=602,book_date:27-08-2019,booked_by="someone"}'
我得到的是:
File "server_flask.py", line 23, in book_room
room = request.form['room']
File "/usr/local/lib/python3.5/dist-
packages/werkzeug/datastructures.py", line 431, in __getitem__
raise exceptions.BadRequestKeyError(key)
werkzeug.exceptions.HTTPException.wrap.<locals>.newcls: 400 Bad
Request: The browser (or proxy) sent a request that this server could
not understand.
谢谢。