Flask-RESTful接口开发学习笔记一:实现简单的GET请求
1、首先安装需要依赖的第三方包:
(1):Flask
(2):Flask-RESTful
如何安装就不在啰嗦,pip也好,下载到本地再安装也好,看你随意。
2、我们先实现GET请求。
Q:什么是GET请求。
A:简单来说,GET请求,就是根据传过来的参数条件,来获取服务端的数据信息,不会改变服务端的数据。更直接的,GET请求,拼成链接直接浏览器就可以访问。
3、接下来实现我们的GET请求。
(1):首先导包,并实例化对像:
from flask import Flask, jsonify
from flask.ext.restful import reqparse, Api, Resource app = Flask(__name__)
app.debug = True
api = Api(app)
(2):模拟创建一些我们需要的数据。
students = {
1: {'name': 'lily', 'age': '22'},
2: {'name': 'jerry', 'age': '23'},
3: {'name': 'joe', 'age': '34'}
}
(3):接下来创建parser对像,解释一下:它是提供简单并且统一的访问 Flask 中flask.request 对象里的任何变量的入口
parser = reqparse.RequestParser()
parser.add_argument('id', type=int, required=True, help='ID不能为空。')
上面第二行代码解释一下:他是给我们的ID加上了一些限制条件,type是类型,required是指他不能为空,help是如果出现了限制条件之外的,则返回这个提示。
(4):请求方法:
class get_stu(Resource):
def get(self):
data= parser.parse_args()
id = data.get('id')
if id == 0:
return jsonify(students)
if id > max(students.keys()):
return jsonify({'msg': 'ID超出范围'})
return jsonify(students.get(id))
请求的类需要继承Resource,定义一个get的方法,则是指get请求,data是去获取前端传过来的数据,为什么用这样的方式获取,前文已经说明。我们这里定义了,如果id为0,则返回所有的学习,如果id超过了范围,则给与相应的提示。如果id为某学生id,则返回该学生的信息。
(5):添加路径与运行:
api.add_resource(get_stu, '/get/stu/') if __name__ == '__main__':
app.run(host='192.168.1.154', port=1234)
直接运行,就可以查实现我们的GET获取数据的功能了。
上几张成功的图。



Flask-RESTful接口开发学习笔记一:实现简单的GET请求的更多相关文章
- Python flask模块接口开发学习总结
引言 Flask 是一个简单且十分强大的Python web 框架.它被称为微框架,“微”并不是意味着把整个Web应用放入到一个Python文件,微框架中的“微”是指Flask旨在保持代码简洁且易于扩 ...
- Rest API 开发 学习笔记(转)
Rest API 开发 学习笔记 概述 REST 从资源的角度来观察整个网络,分布在各处的资源由URI确定,而客户端的应用通过URI来获取资源的表示方式.获得这些表徵致使这些应用程序转变了其状态.随着 ...
- Kinect开发学习笔记之(一)Kinect介绍和应用
Kinect开发学习笔记之(一)Kinect介绍和应用 zouxy09@qq.com http://blog.csdn.net/zouxy09 一.Kinect简单介绍 Kinectfor Xbox ...
- ASP.NET Core Web开发学习笔记-1介绍篇
ASP.NET Core Web开发学习笔记-1介绍篇 给大家说声报歉,从2012年个人情感破裂的那一天,本人的51CTO,CnBlogs,Csdn,QQ,Weboo就再也没有更新过.踏实的生活(曾辞 ...
- 转载:使用Xilinx IP核进行PCIE开发学习笔记(一)简介篇
https://zhuanlan.zhihu.com/p/32786076 最近接触到一个项目,需要使用PCIE协议,项目要求完成一个pcie板卡,最终可以通过电脑进行通信,完成电脑发送的指令.这当中 ...
- 【前端】移动端Web开发学习笔记【2】 & flex布局
上一篇:移动端Web开发学习笔记[1] meta标签 width设置的是layout viewport 的宽度 initial-scale=1.0 自带 width=device-width 最佳实践 ...
- 【前端】移动端Web开发学习笔记【1】
下一篇:移动端Web开发学习笔记[2] Part 1: 两篇重要的博客 有两篇翻译过来的博客值得一看: 两个viewport的故事(第一部分) 两个viewport的故事(第二部分) 这两篇博客探讨了 ...
- 驱动开发学习笔记. 0.07 Uboot链接地址 加载地址 和 链接脚本地址
驱动开发学习笔记. 0.07 Uboot链接地址 加载地址 和 链接脚本地址 最近重新看了乾龙_Heron的<ARM 上电启动及 Uboot 代码分析>(下简称<代码分析>) ...
- android开发学习笔记000
使用书籍:<疯狂android讲义>——李刚著,2011年7月出版 虽然现在已2014,可我挑来跳去,还是以这本书开始我的android之旅吧. “疯狂源自梦想,技术成就辉煌.” 让我这个 ...
随机推荐
- Java探秘之神秘的字符串String(二)
不可变性 String可以说是最常用的类型了,即字符串类型,String是常量(final关键词修饰的),他的值不能被创建后更改,因为字符串是不可被改变的,所以可以被用来共享. Java语言为Stri ...
- 使用 QDockWidget嵌套布局来实现复杂界面,方便用户可以自定义界面,自由组合窗口
http://www.cnblogs.com/findumars/p/5436533.html
- ps_cc切片
web前端开发的工作流程的第一步就是根据ui给的psd来还原设计图样貌. 可是一打开满屏的参考线.这时我们可以alt+v+d清空参考线 这时可以按alt+鼠标拖放图片.同时也可以按F进入半屏和匀速连按 ...
- Window下Jenkins的安装
之前没接触过持续集成工具,之前只是了解了下自动化部署,最近一直在看自动化集成这块,发现要学的东西好多好多,可能在小公司用的不多,但如果在大公司,如果每个项目都要手动build.deploy的话那也太耗 ...
- The request sent by the client was syntactically incorrect问题解决
The request sent by the client was syntactically incorrect意思嘛,google翻译一下 通过日志不难看出,是由参数不匹配造成的. 所以对于Da ...
- Hibernate 实体关联关系映射----总结
在我看来,Hibernate提供这些映射关系,常用就是一对一和多对一,并且在能不用连接表的时候尽量不要用连接表.多对多会用到,如果用到了,应该首先考虑底层数据库设计是否合理. 在实际开发中,在Hi ...
- 【JAVASCRIPT】React学习- 数据流(组件通信)
摘要 react 学习包括几个部分: 文本渲染 JSX 语法 组件化思想 数据流 一 组件通信如何实现 父子组件之间不存在继承关系 1.1 父=>子通信 父组件可以通过 this.refs.xx ...
- python2.7 + selenium3.4.3浏览器的选择
大家都知道,selenium2对火狐浏览器兼容性比较好,和谷歌和IE相比,好处是无需安装相应的driver.exe来支持启动浏览器,但是缺点是最高支持火狐47版本. 现在selenium3出来了,是不 ...
- 写个 Hello world - 前端从入坑到弃坑系列教程(1)
这是一个系列教程<前端从入坑到弃坑>的第一篇. HTML 是什么 说白了,HTML 就是网页的内容.比如你现在正在阅读的这个网页的内容,就是 HTML.如果你还不明白,请继续往下阅读. 写 ...
- 12. leetcode 455.Assign Cookies
Assume you are an awesome parent and want to give your children some cookies. But, you should give e ...