【Flask】Flask-RESTful 风格编程

本文介绍了RESTful API的设计理念和工作方式,它基于HTTP协议,使用XML或JSON格式。RESTful API的核心特点是资源导向,通过GET、POST、PUT、DELETE等方法进行操作。文章还展示了如何使用Python的Flask-RESTful库创建和使用RESTful API,包括普通使用和在蓝图中的应用,提供了一个简单的示例来演示API的创建、资源定义及发布过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

敲代码敲到头发茂密

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

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

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

打赏作者

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

抵扣说明:

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

余额充值