使用方法
导入 flask_restful.marshal_with 装饰器定义一个字典变量来指定需要返回的标准化字段,以及该字段的数据类型在请求方法中,返回自定义对象的时候, flask_restful 会自动的读 取对象模型上的所有属性。 组装成一个符合标准化参数的json 格式字符串返回给客户端
# flask_restful规范返回值
from flask import Flask,render_template
from flask_restful import Api,Resource,fields,marshal_withapp = Flask(__name__)
api =Api(app)class News:def __init__(self,code,msg,state,content):self.code = codeself.msg = msgself.state = stateself.content=contentclass NewsView(Resource):resouce_fileds = {'code':fields.Integer,'msg':fields.String,'state':fields.String}@marshal_with(resouce_fileds)def get(self):return {'code':200,'msg':'访问成功','state':'移动端'}@marshal_with(resouce_fileds)def post(self):return {'msg':'注册成功'}@marshal_with(resouce_fileds)def put(self):# 在返回对象时,会自动在对象中获取与约定好的字段,并获取分装成jsonnews = News(404,'ok','电脑端','sxt')return newsapi.add_resource(NewsView,'/news/')if __name__=="__main__":app.run(debug=True)
执行结果:
GET请求
post请求
put 请求