2017-07-24 202 views
-1

我想在Python中使用Flask框架在我簡單的rest api中測試基本的HTTP請求。 GET方法工作得很好,而不是POST方法。這裏是路線:無法發送POST請求到我的基本FLASK Python應用程序

@app.route('/lang', methods=['POST']) 
def addOne(): 
    language = {'name' : request.json['name']} 
    languages.append(language) 
    return jsonify({'languages' : languages}) 

我的語言詞典:

languages = [{'name' : 'JavaScript'},{'name' : 'Java'}, {'name' : 'Python'}] 

我試圖用郵差的應用程序來發布新的語言的字典,這裏是要求:

http://127.0.0.1:8080/lang 

而在體內,我把這一行放在這裏:

{"name" : "C++"} 

它給我這個錯誤:

File "/home/pi/IoT_api/restful.py", line 22, in addOne 
    language = {'name' : request.json['name']} 
TypeError: 'NoneType' object has no attribute '__getitem__' 
+2

正確定義 '的Content-Type' 頭你告訴郵遞員發送JSON內容類型標題? –

+0

@DanielRoseman是 – Hussein

+1

您發送了哪些標題? –

回答

0

documentation明確表示:

If the mimetype is application/json this will contain the parsed JSON data. Otherwise this will be None.

所以一定要與Postman