第六章 Flask-RESTful api(四)

定义Restful的视图:

如果使用Flask-Restful,则定义视图函数的时候,要继承自flask-restful.Resource类,然后再根据当前请求的method来定义相应的方法。

  比如期望客户端是使用get方法发送过来的请求,那么就定义一个get方法。类似于MethodView。示例代码如下:

案例1:

from flask_restful import Api, Resource
app = Flask(__name__)
api = Api(app)

class Login(Resource):
    def get(self):
        return {"username": "wqbin"}


api.add_resource(Login, '/login/', endpoint='login_func')
with app.test_request_context():

    print(url_for('login_func'))

案例2:

 

class Login_in(Resource):
    def post(self,username):

        return {"username": '123'}


api.add_resource(Login_in, '/login_in/<username>/',endpoint="login_in_func")
#
with app.test_request_context():

    print(url_for('login_in_func',username='wqbin'))

 

注意事项:
1.endpoint 是用来给url_for反转url的时候指定的。如果不写endpoint,那么将会使用视图的名字的小写来作为endpoint。
2.add_resource的第二个参数是访问这个视图函数的ur1,这个ur1可以跟之前的route一样,可以传递参数。并且还有一点不同的是,这个方法可以传递多个ur1来指定这个视图函数。

参数解析:

F1ask-Restful插件提供了类似wTForas来验证提交的数据是否合法的包,叫做reqparse。以下是基本用法:

 

猜你喜欢

转载自www.cnblogs.com/wqbin/p/12483299.html