Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/70.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python Flask-MySQL:如何处理要插入数据库的有效负载?_Python_Mysql_Flask - Fatal编程技术网

Python Flask-MySQL:如何处理要插入数据库的有效负载?

Python Flask-MySQL:如何处理要插入数据库的有效负载?,python,mysql,flask,Python,Mysql,Flask,我正在尝试向DB插入有效负载,我有以下代码: @app.route('/login', methods=['POST']) def login(): if request.method == 'POST': data = request.get_json() credentials = jsonify(data) cur = mysql.connection.cursor() cur.execute('''INSERT INTO User

我正在尝试向DB插入有效负载,我有以下代码:

@app.route('/login', methods=['POST'])
def login():
    if request.method == 'POST':
        data = request.get_json()
        credentials = jsonify(data)
    cur = mysql.connection.cursor()
    cur.execute('''INSERT INTO User (username, fb_id, auth_token, date_joined)
                VALUES (%(username)s, %(fb_id)s, %(auth_token)s, %(date_joined)s''',
                    credentials) 
    return "ok"
这是我试图在Postman上测试的JSON示例:

{
  "username": "edjones",
  "fb_id": "aklsjdla123",
  "auth_token": "alksdjaks",
  "date_joined": 12309201910
}
    args = tuple(map(db.literal, args))
TypeError: argument 2 to map() must support iteration
这是我在《邮差》上看到的错误:

{
  "username": "edjones",
  "fb_id": "aklsjdla123",
  "auth_token": "alksdjaks",
  "date_joined": 12309201910
}
    args = tuple(map(db.literal, args))
TypeError: argument 2 to map() must support iteration
处理有效负载的正确方法是什么?

返回解析后的json正文,将数据序列化为json并将其包装在响应中。游标的
execute()
方法需要一个序列或一个参数映射作为第二个参数,但需要向其传递一个响应。放弃对
jsonify()
的调用:


由于您已经将已接受的方法限制在decorator中,因此if保护应该是多余的。

您是否在python文件中意外创建了map函数?另外,请包含有助于快速解决问题的完整回溯。请在调试问题中包含完整回溯。在这种情况下,异常的字符串repr本身几乎是无用的。例如,不清楚代码中的哪一行会引发错误。