【Flask】Flask-RESTful 风格编程

一、RESTful定义

RESTFUL是一种网络应用程序的设计风格和开发方式,基于HTTP,可以使用XML格式定义或JSON格式定义。
RESTFUL适用于移动互联网厂商作为业务使能接口的场景。

在这里插入图片描述
RESTFUL特点包括:
1、每一个URI代表1种资源;
2、客户端使用GET、POST、PUT、DELETE4个表示操作方式的动词对服务端资源进行操作:GET用来获取资源,POST用来新建资源(也可以用于更新资源),PUT用来更新资源,DELETE用来删除资源;
3、通过操作资源的表现形式来操作资源;
4、资源的表现形式是XML或者 JSON;
5、客户端与服务端之间的交互在请求之间是无状态的,从客户端到服务端的每个请求都必须包含理解请求所必需的信息。

二、安装和使用

pip install flask-restful

1、普通使用

步骤一:创建restful的API
步骤二:定义资源resource
步骤三:把资源加载到api中,才可以发布

from flask import Flask
from flask_restful import Resource,Api

app=Flask(__name__)

#步骤一:创建restful的API
api=Api(app)

#步骤二:定义资源resource
class HelloResource(Resource):

    def get(self):
        return {'hello':'get'}
    def post(self):
        return {'hello':'post'}
    def put(self):
        return {'hello':'put'}

#步骤三:把资源加载到api中,才可以发布
api.add_resource(HelloResource,'/hello')


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

访问接口:
在这里插入图片描述
2、蓝图中使用
第一步:创建蓝图:

from flask import Flask,Blueprint
from flask_restful import Resource,Api

#创建蓝图
user_bp=Blueprint('user',__name__,static_folder='static',template_folder='templates')


#加载视图
from user.user import user_view,HelloResource

第二步:蓝图下创建视图
1、创建restful的api

user_api=Api(user_bp)

2、定义资源

class HelloResource(Resource):
    def get(self):
        return {'hello':'get'}
    def post(self):
        return {'hello':'post'}
    def put(self):
        return {'hello':'put'}

3、将资源加载到api中,才可以发布

user_api.add_resource(HelloResource,'/hello')

第三步:注册路由:

app.register_blueprint(user_bp,url_prefix='/user')

第四步:启动项目,访问资源
在这里插入图片描述

注意:如果蓝图里面有url_prefix,那么请求url = url_prefix + resource_url

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
`Flask-RESTful` 是 Flask 的一个扩展,它使创建 RESTful API 变得更加容易。使用 Flask-RESTful,你可以使用 Python 类来定义资源(Resource),并使用 Flask 的路由系统来将 URL 映射到这些资源上。 Flask-RESTful 提供了一组类和方法来处理 HTTP 请求和响应,例如 `Resource`、`Api`、`reqparse` 等。其中,`Resource` 类表示一个 RESTful 资源,它封装了 HTTP 请求和响应的处理逻辑。`Api` 类表示整个 RESTful API,它可以将多个资源组合在一起,并将它们映射到 URL 上。`reqparse` 类用于解析和验证 HTTP 请求参数。 下面是一个简单的使用 Flask-RESTful 的示例: ``` from flask import Flask from flask_restful import Api, Resource, reqparse app = Flask(__name__) api = Api(app) class HelloWorld(Resource): def get(self): return {'hello': 'world'} api.add_resource(HelloWorld, '/') if __name__ == '__main__': app.run(debug=True) ``` 在上面的示例中,`HelloWorld` 类继承自 `Resource` 类,表示一个 RESTful 资源。`get()` 方法表示处理 HTTP GET 请求的逻辑,它返回一个 JSON 响应。`api.add_resource()` 方法将 `HelloWorld` 资源映射到根 URL 上。当用户访问根 URL 时,Flask-RESTful 将自动调用 `HelloWorld` 资源的 `get()` 方法,并返回 JSON 响应。 Flask-RESTful 还支持其他 HTTP 方法,例如 POST、PUT、DELETE 等。你可以根据实际需求定义不同的资源和方法,以创建一个完整的 RESTful API。 总之,Flask-RESTful 是一个非常方便的 Flask 扩展,可以帮助你轻松地创建 RESTful API,从而提供 Web 服务和数据接口。它提供了一组类和方法,使 HTTP 请求和响应的处理变得更加简单和易于维护。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

敲代码敲到头发茂密

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值