如何修复烧瓶test_client()。post()中的json解码错误?

时间:2019-01-16 01:17:35

标签: python flask

我正在尝试为Flask JSON API写一个测试套件,但是似乎无法将{"form_id": "data"}传递到json=方法的app.test_client() post()参数中。

{"form_i": "data"}工作正常,我尝试设置各种编码选项时没有任何运气。

with app.test_client() as c:
  test_call = c.post("api/signup/", json={'form_id': 'hi'})

给出以下错误消息:

json.decoder.JSONDecodeError: Expecting value: line 8 column 4 (char 123)

2 个答案:

答案 0 :(得分:0)

推荐给您

import json
with app.test_client() as c:
  test_call = c.post("api/signup/", 
                     data=json.dumps({'form_id': 'hi'}), 
                     content_type='application/json')
@app.route('api/signup', methods=['post'])
def signup():
    json = request.json

答案 1 :(得分:0)

没关系,原来是一个不同的错误–正在调用一个单独的JSON文件,却忘记删除尾随逗号...