flask_restful规范返回值之参数设置

设置重命名属性和默认值
使用 attribute 配置这种映射 , 比如: fields.String(attribute='username')
使用 default 指定默认值,比如: fields.String(default='sxt')

复制代码
from flask import Flask,render_template
from flask_restful import Api,Resource,fields,marshal_with

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

class News:
    def __init__(self,code,msg,info):
        self.code = code
        self.msg = msg
        self.info = info
        self.state= 1000

class NewsView(Resource):
    resouce_fileds = {
        # 通过参数default来设置默认值
        'code':fields.Integer(default=200),
        'msg':fields.String,
        # 通过参数attribute来设置提取数据的字段
        'content':fields.String(attribute='info'),
        # 优先级不如真实数据里面的高
        'state':fields.Integer(default=2000)
         }
    @marshal_with(resouce_fileds)
    def get(self):
        return News(200,'访问成功!','移动')
    
    @marshal_with(resouce_fileds)
    def post(self):
        return {'msg':'增加数据成功','info':'联通'}
    
    @marshal_with(resouce_fileds)
    def put(self):
        # 在返回对象时,会自动在对象中获取与约定好的字段,并获取分装成json
        news = News(404,'访问成功','移动')
        return news

api.add_resource(NewsView,'/news/')

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

执行结果:

相关推荐
Shan12051 小时前
浅谈:无服务器WebSocket解决方案
云原生·flask·serverless
AIFQuant2 小时前
外汇交易平台技术栈深度解析:行情 API、清算、风控、前端一体化方案
前端·python·websocket·金融·restful
知识分享小能手1 天前
Flask入门学习教程,从入门到精通,Flask智能租房——用户中心知识点详解(9)
python·学习·flask
輕華1 天前
Flask_GET请求与JSON响应实战详解
python·flask·json
Dynadot_tech2 天前
使用RESTfulAPI有效率地管理Dynadot域名,Webhook功能上线
api·restful·域名·restful api·dynadot·域名管理
努力攻坚操作系统2 天前
重新理解 RESTful:从理论约束到工程实践
后端·restful
TE-茶叶蛋2 天前
Graph RAG Agent 系统深度分析
后端·python·flask
知识分享小能手2 天前
Flask入门学习教程,从入门到精通,Flask智能租房——详情页完整知识点详解(8)
python·学习·flask
飞翔中文网3 天前
读RESTful有感,关于Java接口设计规范的说明
java·restful·设计规范
24kmaigc3 天前
NewStarCTF2025-ssti在哪里?-ssrf与ssti注入
python·网络安全·flask·web