Flask 使用自定义标头测试 put 请求

2023-12-25

我尝试使用 Flask 测试客户端在 Flask 应用程序中测试 PUT 请求。 一切看起来都不错,但我不断收到 400 BAD 请求。

我使用 POSTMAN 尝试了相同的请求,并得到了响应。

这是代码

 from flask import Flask 
 app = Flask(__name__) 
 data = {"filename": "/Users/resources/rovi_source_mock.csv"}
 headers = {'content-type': 'application/json'}
 api = "http://localhost:5000/ingest"
 with app.test_client() as client:
    api_response = client.put(api, data=data, headers=headers)
 print(api_response)

Output

Response streamed [400 BAD REQUEST]

您确实需要将数据实际编码为 JSON:

import json

with app.test_client() as client:
    api_response = client.put(api, data=json.dumps(data), headers=headers)

Setting data字典将其视为常规表单请求,因此每个键值对将被编码为application/x-www-form-urlencoded or multipart/form-data内容(如果您使用过任一内容类型)。事实上,您的数据将被完全忽略。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Flask 使用自定义标头测试 put 请求 的相关文章

随机推荐