请求.json只返回字符串

2024-09-30 16:30:57 发布

您现在位置:Python中文网/ 问答频道 /正文

我使用Axios和Flask开发restfulapi。在

但是Axios和Flask之间的JSON数据有一个问题。在

我无法通过request.json从Axios获取JSON数据。在

我试了很多方法,但都不管用。在

通常,request.json将得到None,而{}将得到:

b'------WebKitFormBoundaryNzW4jnyUkdEH3jsX\r\nContent-Disposition: form-data; name="user"\r\n\r\nu\r\n------WebKitFormBoundaryNzW4jnyUkdEH3jsX\r\nContent-Disposition: form-data; name="pwd"\r\n\r\np\r\n------WebKitFormBoundaryNzW4jnyUkdEH3jsX--\r\n'

调试之后,request.json现在可以获取数据了。在

但它只能得到string,不能得到{}。在

代码如下:

Axios公司

^{pr2}$

烧瓶

@app.route('/api/user', methods=['POST'])
def user():
    j = request.json
    print(j)
    print(type(j))

结果

{"user": "user", "pwd": "pwd"}
class 'str'

我怎么修? 谢谢您。在


Tags: 数据nameformjsonflaskdatarequestpwd
2条回答

似乎是从Axios以字符串的形式发送json。
作为一种解决方法,您可以从flask端将stringized json转换为dictionary。在

import json

@app.route('/api/user', methods=['POST'])
def user():
    j = json.loads(request.json)

您希望改用get_json()。根据烧瓶文件here它说不要使用json,而是{}。在

相关问题 更多 >