Flask:使用api.payload与request.json

问题描述

我正在学习python flask,并且正在编写一些原始代码以进一步了解它。 我发现print(api.payload)print(request.get_json())打印相同的输出 即它按预期返回json文件内容(无论我作为IP 127.0.0.1:5000/上的输入传递的任何字符串)。 在这种情况下,我执行了包含内容{'Make': 'toyota'}

的Post请求
127.0.0.1 - - [12/Oct/2020 15:59:26] "GET / HTTP/1.1" 200 -
127.0.0.1 - - [12/Oct/2020 15:59:26] "GET /swagger.json HTTP/1.1" 200 -
127.0.0.1 - - [12/Oct/2020 15:59:26] "GET /swaggerui/favicon-32x32.png HTTP/1.1" 200 -
{'Make': 'toyota'}
{'Make': 'toyota'}

使用的示例代码

from flask import Flask,request
from flask_restplus import Api,Resource,fields

app = Flask(__name__)
api = Api(app)


car_model = api.model('Car Info',{'Make' : fields.String('The car company')})

car = {'Make' : 'Honda'}


@api.route('/home')
class Car(Resource):
    def get(self):
        return car

    @api.expect(car_model)
    def post(self):
        print(request.get_json())
        print(api.payload)
        return {'Result' : 'Success'},200


if __name__ == '__main__':
    app.run(debug=True)

有人可以告诉我,使用一个相对于另一个是否有优势,或者两者可以互换使用?如果有什么优势,为什么要使用另一个优势呢?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)