1 python json flask flask-restful
我的 Flask 代码的一部分:
@app.route('/api/post', methods=['POST'])
def post():
body = request.get_json()
json_body = json.loads(body)
new_id = mongo.db.Projects.insert(json_body)
return str(new_id)
Run Code Online (Sandbox Code Playgroud)
用于发布新数据库条目的脚本:
payload = { 'ProjectName' : 'KdB Test Project' }
headers = {'Content-type': 'application/json', 'Accept': 'application/json'}
r = requests.post('http://localhost:5000/api/post', headers=headers, data=json.dumps(payload))
Run Code Online (Sandbox Code Playgroud)
我不断收到 json 解码器 TypeError 问题,例如
TypeError: expected string or buffer
2016-08-16 15:19:31,388 - werkzeug - INFO - 127.0.0.1 - - [16/Aug/2016 15:19:31] "POST /api/post HTTP/1.1" 500 -
Run Code Online (Sandbox Code Playgroud)
我尝试过几件事,包括。发布字符串。我发布字典的方式有什么问题吗?问题似乎出在 body = request.get_json() 处。我不认为我正在收集任何数据...
您不需要loads请求消息来获取字典格式。存储在变量中的信息body已经是字典形式。只需执行以下操作即可消除错误:
@app.route('/api/post', methods=['POST'])
def post():
body = request.get_json()
# json_body = json.loads(body)
new_id = mongo.db.Projects.insert( body )
return str( new_id )
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
450 次 |
| 最近记录: |