flask-restful是一个用于快速创建restful api接口的flask扩展。使用flask-restful可以很快速方便地创建一个restful风格的接口应用程序。

1、安装

pip install flask_restful

2、全部代码

from flask import flask

from flask_restful import reqparse, abort, api, resource

app = flask(__name__)

api = api(app)

todos = {

'todo1': {'task': 'build'},

'todo2': {'task': 'bui2'},

'todo3': {'task': 'bui3'}

}

parser = reqparse.requestparser()

parser.add_argument('task')

class todo(resource):

def get(self, todo_id):

return todos[todo_id]

def delete(self, todo_id):

del todos[todo_id]

return '', 204

def put(self, todo_id):

args = parser.parse_args()

task = {'task': args['task']}

todos[todo_id] = task

return task, 201

class todolist(resource):

def get(self):

return todos

api.add_resource(todolist, '/todos')

api.add_resource(todo, '/todos/')

if __name__ == '__main__':

app.run(debug=true)

3、代码说明

1). 初始化

在当前程序初始化一个flask-restful的api实例:

api = api(app)

2). 定义资源类

资源类是restful接口的具体实现,需要继承resource类。在类中可以定义get、post等符合restful规范的接口。

class todo(resource):

def get(self, todo_id):

return todos[todo_id]

def delete(self, todo_id):

del todos[todo_id]

return '', 204

def put(self, todo_id):

args = parser.parse_args()

task = {'task': args['task']}

todos[todo_id] = task

return task, 201

3). 参数解析

虽然 flask 提供了简单的方法访问请求数据, 但是对于表单数据处理还是比较麻烦. flask-restful 提供了 reqparse 一种类似 argparse 参数解析机制以简化参数处理.

parser = reqparse.requestparser(): reqparse使用requestparser() 可以从 flask.request.values,以及 flask.request.json 解析值。这里创建了一个解析对象parser。

parser.add_argument('task'):向parser对象中添加你要关注的命令行参数和选项,每一个add_argument方法对应一个你要关注的参数或选项。

parser.parse_args():调用parse_args()方法进行解析,解析成功之后即可使用。

4). add_argument扩展

对于必传的参数,可以设置required=true

parser.add_argument('name', type=str, required=true,

help="name cannot be blank!")

传多个值,使用 action='append'

parser.add_argument('name', type=str, action='append')

使用:

curl http://api.example.com -d "name=bob" -d "name=sue" -d "name=joe"

获取的参数为:

args = parser.parse_args()

args['name'] # ['bob', 'sue', 'joe']

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持萬仟网。

希望与广大网友互动??

点此进行留言吧!

python flask高级编程之restful_flask-restful使用总结相关推荐

  1. python flask高级编程之restful_('Python Flask高级编程之RESTFul API前后端分离精讲',),全套视频教程学习资料通过百度云网盘下载...

    资源详情 r n t某课网好评度100%的Python Flask高级编程之RESTFul API前后端分离精讲 r n t t t第1章 随便聊聊 r n t t t聊聊Flask与Django,聊 ...

  2. python flask高级编程之restful_python Flask实现restful api service

    一直在用node.js做后端,要逐步涉猎大数据范围,注定绕不过python,因此决定把一些成熟的东西用python来重写,一是开拓思路.通过比较来深入学习python:二是有目标,有动力,希望能持之以 ...

  3. python flask restful入门_Python Flask高级编程之RESTFul API前后端分离精讲

    第1章 随便聊聊 聊聊Flask与Django,聊聊代码的创造性1-1 Flask VS Django 1-2 课程更新维护说明 第2章 起步与红图 本章我们初始化项目,探讨与研究Flask的默认层级 ...

  4. python画鱼教程_Python Flask高级编程之从0到1开发《鱼书》精品项目 学习 教程??

    一 .安装环境 我们使用 flask web框架,并用 sqlalchemy来做数据库映射,并使用 migrate做数据迁移. $ pip install flask $ pip install SQ ...

  5. unix环境高级编程之 read与write 函数详解

    学习记录:unix环境高级编程之 read 与write  函数详解 备注:本博文非本人所写,本人觉得此文讲的非常地道通俗易懂,所以摘录在此以方便以后再次查看 read函数从打开的设备或文件中读取数据 ...

  6. 笔记︱利用python + flask制作一个简易本地restful API

    原版官网:http://flask-restful.readthedocs.io/en/latest/ 中文官网:http://www.pythondoc.com/Flask-RESTful/quic ...

  7. python flask api 统计_python之restful api(flask)获取数据

    需要用到谷歌浏览器的扩展程序 Advanced Rest Client进行模拟请求 1.直接上代码 1 from flask importFlask2 from flask importrequest ...

  8. 程序员炫技:探索高级编程之美

    程序员常常被视为具有超强技术能力的人才,他们的代码充满了令普通人惊叹的炫技操作.在这篇文章中,我们将一起探讨程序员的炫技代码写法,分享一些高级编程技巧,同时提供一些学习建议,让你也能成为编程高手. 一 ...

  9. QT高级编程之QT基本概览

    QT高级编程 主要从以下几个方面来介绍QT高级编程,并介绍QT相关的概念. 1. QT部件Widget: 2. QT信号与槽机制: 3. 对象树关系: 4. 布局管理: 5.标准对话框以及自定义对话框 ...

最新文章

  1. 2022-2028年中国中空玻璃聚硫密封胶行业市场研究及前瞻分析报告
  2. 元宇宙该如何发展才不会变为泡沫
  3. python开发中文软件-Python 3程序开发指南(第二版)
  4. JZOJ 5473. 【NOIP2017提高组正式赛】小凯的疑惑
  5. 转: ajax跨域之JSONP
  6. 温故之 “快速排序”
  7. 【linux】【tcpdump】linux之tcpdump抓包及wireshark分析详解
  8. matlab cell
  9. kubernetes视频教程笔记 (22)-存储-Secret
  10. 三星emcp型号详解_eMCP终将成为过去式?解析:三星、美光所推出的uMCP为何物?...
  11. pdfobject屏蔽头部工具栏如何兼容ie
  12. 采集插件,自动采集伪原创发布插件
  13. 如何辩证看待技术与业务的关系
  14. 蒟蒻C语言入门篇(一)
  15. 网络API接口的使用
  16. MongoDB LBS经纬度查询操作
  17. Uni-app小程序问题汇总
  18. 将进酒:《惜樽空》敦煌抄本
  19. 常见的专用服务器有哪几种呢
  20. 数学建模常用算法:粒子群算法(PSO)求解二元函数最小值+限定x,y范围测试【java实现--详细注释+Matlab绘制粒子群飞行过程】

热门文章

  1. android shell强制删除文件夹_别再乱清手机内存了,删除这3个“特殊”文件夹!空间释放8GB...
  2. mysql查询系统年月_mysql每个月自动创建一张表,以年月做为表名,如何进行联合查询...
  3. t分布表精确完整图_如何快速绘制临床论文基线特征表
  4. java sqlite 操作_Java SQLite 数据库操作
  5. was控制台的用户和密码怎样加密使用_Python爬虫进阶 | X咕视频密码与指纹加密分析...
  6. 【debug】UnicodeDecodeError: codec can't decode byte 0xbd in position 4: invalid start byte
  7. 大数据分析工程师证书_CDA数据分析就业班、大数据就业班就业情况怎么样?
  8. html显示余额什么做,账户余额.html · dengzhao/prd_zhangyao - Gitee.com
  9. android studio光标变成黑块,解决Android Studio 代码无提示无颜色区分问题
  10. 单单表单独占一行_聊一聊 Excel 数据透视表的 4 种布局选项