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之旅吧. “疯狂源自梦想,技术成就辉煌.” 让我这个 ...
随机推荐
- mac版破解office
下载地址:http://ereach-public.oss-cn-shanghai.aliyuncs.com/office%202016%20for%20mac.dmg 解压密码:www.ifunma ...
- JavaScript一个生成文档目录的实例
执行结果: <body> <script type="text/javascript"> /** * 这个模块注册一个可在页面加载完成后自动运行的匿名函数, ...
- HDU 2955 Robberies(DP)
题目网址:http://acm.hdu.edu.cn/showproblem.php?pid=2955 题目: Problem Description The aspiring Roy the Rob ...
- 使用apidoc根据JS文件生成接口文档
1.安装nodejs.下载网址:http://www.nodejs.org: 2.安装apidoc.运行cmd,切换到nodejs的安装目录,在命令行输入: 1 npm install apidoc ...
- SQL Server 2012 案例教程(贾祥素)——学习笔记
第2章 SQL Server 2012概述 1.SQL(Structed Query Language),结构化查询语言. 2.SSMS(SQL Server Mangement Studio),SQ ...
- async 函数
同步 console.log(1); console.log(2); console.log(3); console.log(4); //异步 ajax 文件读取io操作 console.log(1) ...
- Android - FEATURE_NO_TITLE
Android设置无标题的方法 在onCreate()中写入: requestWindowFeature(Window.FEATURE_NO_TITLE); 例如: protected void on ...
- Druid 详细介绍
文章来自阿里巴巴 Druid是一个JDBC组件,它包括三部分: DruidDriver 代理Driver,能够提供基于Filter-Chain模式的插件体系. DruidDataSource 高效可 ...
- JS遍历属性和方法
引用原文:http://www.cnblogs.com/lishenglyx/archive/2008/12/08/1350573.html#undefined <script language ...
- PHP执行linux命令mkdir权限问题
在linux系统中,root帐号执行php命令: mkdir('test', 0777); 结果文件的权限依然为: drwxr-xr-x 2 root root Jul 27 19:30 test ...