内容简介:所需依赖:备注:flask-restful不能和flask的render_template模板结合使用,因为restfulapi的设计不是为了在flask里直接返回html。在使用restful时,使用前后端分离模式。
所需依赖:
Flask Flask-RESTful Python2.7
备注:flask-restful不能和flask的render_template模板结合使用,因为restfulapi的设计不是为了在flask里直接返回html。
在使用restful时,使用前后端分离模式。
本文档不包含flask的认证登陆功能
restful说明
restful把所有url请求当做资源, 资源下的get方法对应get请求,post方法对应post请求,put方法对应put请求,delete方法对应delete请求。
get请求,post新增, put修改, delete删除
具体的url设计模式,参考文章: RESTful API 设计指南
1、目录结构
. ├── assets │ ├── __init__.py │ ├── server.py │ ├── urls.py ├── run.py
2、assets下文件配置
__init__.py
from flask import Blueprint assets_page = Blueprint('assets_page', __name__) import urls
urls.py
#coding:utf-8 from assets import assets_page from flask_restful import Resource, Api from server import Servers, Server api = Api(assets_page) #注册路由 api.add_resource(Servers, '/servers') api.add_resource(Server, '/servers/<_id>')
server.py
#coding:utf-8 from flask import request from flask_restful import Resource, Api class Servers(Resource): def get(self): #返回所有数据 return 'this is data list' def post(self): #新增数据 data = request.get_json() return 'add new data: %s'%data class Server(Resource): def get(self,_id): #返回单条数据 return 'this data is %s'%_id def delete(self,_id): #删除单条数据 return 'delete data: %s'%_id def put(self, _id): #修改单条数据 data = request.get_json() return 'put data %s: %s'%(_id, data)
3、run.py配置
#coding:utf-8 from flask import Flask #导入蓝图实例 from assets import assets_page app = Flask(__name__, template_folder='templates', static_folder='static', ) #注册蓝图 app.register_blueprint(assets_page) if __name__ == '__main__': app.run(host='0.0.0.0', port=5000, debug=True)
4、测试
在 linux 终端测试
#获取列表: $ curl 127.0.0.1:5000/servers "this is data list" #新增数据 $ curl -X POST -H "Content-Type:application/json" -d '{"name":"yangr"}' 127.0.0.1:5000/servers "add new data: {u'name': u'yangr'}" #修改数据 $ curl -X PUT -H "Content-Type:application/json" -d '{"name":"yangr"}' 127.0.0.1:5000/servers/2 "put data 2: {u'name': u'yangr'}" #删除数据 $ curl -X DELETE 127.0.0.1:5000/servers/3 "delete data: 3"
后续再出sqlalchemy系列操作数据库的文章
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
猜你喜欢:- 腾讯织云API平台:结合DevOps理念的一次新实践
- Linux 后台运行任务 nohup 结合 & 用法以及如何精准查找进程并 kill 后台任务实践
- 吴为龙:分布式存储结合公链激励的工程实践 | 巴比特加速器技术公开课
- 代理模式——结合SpringAOP讲解
- 如何结合 Scrum 和 Kanban
- NServiceBus 结合 RabbitMQ 使用教程
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
实战Linux编程精髓
罗宾斯 / 中国电力出版社 / 2005-7 / 59.80元
编写应用软件,特别是那些比较重要的软件,毫无疑问要涉及到系统调用。在UNIX/Linux环境下编程更是如此。要想编写优秀的软件,就必须熟悉这些系统调用的方方面面。通过阅读这本书,你能够快速地掌握这些重要技术,以构建严谨的Linux软件。全书主要分为三大部分:第一部分讨论了基本的编程问题,包括Linux编程环境、基本的文件和进程管理与操作、内存操作,还介绍了一些基本的库接口。第二部分比较深入地讨论了......一起来看看 《实战Linux编程精髓》 这本书的介绍吧!