我的瓶代碼部分:Python的瓶RESTful的API
@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)
腳本來發布新的數據庫條目:
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))
我不斷收到JSON解碼器類型錯誤的問題,例如
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 -
我已經嘗試了幾件事情,發佈字符串。任何線索我發佈字典的方式有什麼問題? 這個問題似乎是在body = request.get_json()。我不認爲我正在採集任何數據...
謝謝,朋友。不幸的是,這並沒有解決我的問題。我收到以下錯誤: –
仍然出現該錯誤:文件「c:\ Python27 \ Lib \ json \ __ init__.py」,第338行,加載中 return _default_decoder.decode(s) 文件「c:\ Python27 \ Lib \ json \ decoder.py「,行365解碼 obj,end = self.raw_decode(s,idx = _w(s,0).end())TypeError:期望的字符串或緩衝區 –
感謝您的幫助。問題解決了。重新啓動系統和/或將@ app.route更改爲其他路徑有所幫助。 –