Flask框架之Flask_RESTful

Flask_RESTful的基本使用

优势:

  • Flask-Restful是一个专门用来写restful api的一个插件
  • 使用它可以快速的集成restful api接口功能。
  • 在系统的纯api的后台中,这个插件可以帮助我们节省很多时间。

缺点:

  • 如果在普通的网站中,这个插件就没有优势了,因为在普通的网站开发中,是需要去渲染HTML代码的,
  • Flask-Restful在每个请求中都是返回json格式的数据。

安装
pip install flask-restful


基本使用

定义Restful的类视图:

  1. flask_restful中导入Api,来创建一个api对象。
  2. 写一个类视图,让它承自Resource类,然后在类视图中,使用想要的请求方式来定义相应的方法,比如想要将这个·类视图·只能采用post请求,那么就定义一个post方法。
  3. 使用api.add_resource来添加类视图与url

from flask import Flask,url_for,render_template 
from flask_restful import Api,Resource 

app = Flask(__name__) 

# 创建一个api对象
api = Api(app) 

#定义一个类视图
class LoginView(Resource):  
	def post(self): 
		return {"flag":"yes"} #字典 

	def get(self): 
		return {"flag":"no"} 

# api.add_resource(LoginView,'/login/')
#可支持多个url映射
api.add_resource(LoginView,'/login/','/login2/',endpoint="login") 

#应用上下文
with app.test_request_context():
	#不写`endpoint`,那么将会使用视图的名字的小写(所有都小写)来作为`endpoint`。 
	# print(url_for('loginview')) 
	#如果指定了endpoint,就只能使用endpoint指定的值创建url
	print(url_for('login')) 

@app.route('/') 
def hello_world(): 
	return render_template('index.html') 

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


注意:

  • 如果你想返回json数据,那么就使用flask_restful,如果你是想渲染模版,那么还是采用之前的方式,就是app.route的方式。
  • url还是跟之前的一样,可以传递参数。也跟之前的不一样,可以指定多个url
  • endpoint是用来给url_for反转url的时候指定的。如果不写endpoint,那么将会使用视图的名字的小写来作为endpoint
  • 可以使用postman接口测试工具测试post等请求结果。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值