flask-restful 模块

1 安装

pip install flask-restful

2 官方文档

Flask-RESTful — Flask-RESTful 0.3.8 documentation

3 样例代码

from flask_restful import Resource, Api, reqparse

'''  创建 Api 对象,用于管理 类视图(资源) '''
api = Api(app)

'''  验证端提交过来的参数  '''
parser = reqparse.RequestParser()


class TestCaseResource(Resource):
    def get(self):
        '''
        对前端 reuest 提交过来的参数进行验证,对前端提交过来的 username 参数进行校验,校验规则
        是一套规则的组合,都满足代码才会往下走,只要有一个校验规则不通过,就会 response 给前端 
        json_str 的异常信息,内容为
        {
           "message": {
           "username": "Please input username: " 
           }
        }
        如果 校验规则中没有指定 help 异常返回信息,默认返回如下内容
        {
            "message": {
            "username": "Missing required parameter in the JSON body"
            }
        }
        各个校验规则详细说明如下 
        location 参数所在的位置,数据类型为 list ,元素可以为 json(post 请求的 body 且 body 
        的数据格式为 json 串)、form(post 请求的 body ,但不要求 body 的数据格式必须为 json 
        串)、args(url 中的查询参数)、values(form 或 args)、headers、cookies,也就是这个
        参数必须以这些参数体中出现,例如 location=['args'] 表示参数必须以 查询参数 出现,如果以 
        路径参数、body 体中出现,都会校验不通过。
        type 参数的数据类型,支持的值有 int、zero_int、str、empty_str 
        '''
        parser.add_argument(name='username', 
                            location=['json', 'args'], 
                            nullable=False, 
                            required=True, 
                            type=str, 
                            help='Please input username: ') 
 
        '''
        参数校验通过了,将所有的参数都取出来,返回值的数据类型为 .
        flask_restful.reqparse.Namespace,本质其实一个 dict
        '''
        args = parser.parse_args()

        '''
        response 返回一个 dict ,但 flask_restful 模块会自动转成 str_json 返给 客户端
        '''
        return {
            'foo': 'post',
            '''  将 request 传过来的 username 参数取出来  '''
            'username': args['username']  
        }

''' 将 Resource 资源添加到路由中  '''
api.add_resource(TestCaseResource, '/test-case/')

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值