我正在尝试创建一个简单的 api 来接收任何格式的 json 数据,但收到 400 个错误请求。请查看我的代码并更正

i am trying to create a simple api to recieve any format of json data but getting 400 bad request.. please have a look to my code and correct

    from flask import Flask, abort, request
    import json
    app = Flask(__name__)


    @app.route('/data', methods=['POST'])
    def data():
        if not request.json:
            abort(400)
        print(request.json)
        return json.dumps(request.json)


    if __name__ == '__main__':
        app.run(host='0.0.0.0', port=5001, debug=True)

我想将我所有的 post 请求发送到位于 localhost:8000 的另一个端点。请提出更正建议enter code here

我试过运行你的代码,它工作正常,这是我的例子:

服务器和你的一样。关于您的代码的一项建议:.json 属性已被弃用,您应该使用 request.get_json() 方法。

   from flask import Flask, abort, request
    import json
    app = Flask(__name__)


    @app.route('/data', methods=['POST'])
    def data():
        if not request.json:
            abort(400)
        print(request.json)
        return json.dumps(request.json)


    if __name__ == '__main__':
        app.run(host='0.0.0.0', port=5001, debug=True)

客户:

import requests
res = requests.post('http://localhost:5001/data', json={"mytext":"test"})
if res.ok:
    print(res.json())

我猜你没有触发正确的 HTTP 请求。例如,您是否在 http header 中添加属性 Content-Type: application/json