[每次我尝试通过request.json()从请求中获取JSON时,都会发生错误'dict对象不可调用'。例如,
from bottle import run, request, post
@post('/')
def test():
data = request.json()
run(host='localhost',port=8080)
使用curl进行测试,
curl -H "Content-Type: application/json" -d '{"test":"test"}' -X POST http://localhost:8080/
这是输出,
Traceback (most recent call last):
File "C:\Users\javir\AppData\Local\Programs\Python\Python38\lib\site-packages\bottle.py", line 868, in _handle
return route.call(**args)
File "C:\Users\javir\AppData\Local\Programs\Python\Python38\lib\site-packages\bottle.py", line 1748, in wrapper
rv = callback(*a, **ka)
File "d:/Workspace Universidad/SD-P3/test.py", line 5, in test
data = request.json()
TypeError: 'dict' object is not callable
127.0.0.1 - - [12/May/2020 12:43:42] "POST / HTTP/1.1" 500 741
无论内容如何,我总是遇到相同的错误。有人知道这会是什么吗?
在python中,当您在变量后添加()
时会发生“调用”。 TypeError: 'dict' object is not callable
仅表示request.json
是dict
,因此无法调用。在()
之后删除request.json
。
@post('/')
def test():
data = request.json
应该是data = request.json
,而不是data = request.json()