Flask搭建一个API服务器的步骤


Posted in Python onMay 28, 2021

一、API列表

 1. 获取作品列表

① 获取手工制作作品列表。

请求格式:

http://api.mculover666.cn:9999/twkk/list/hand_made

返回结果:

{
	goods_num: 3,
	goods_item: [
		{
			goods_id: 1,
			goods_name: "goods1",
			goods_img_url: "xxx"
		},
		{
			goods_id: 2,
			goods_name: "goods1",
			goods_img_url: "xxx"
		},
		{
			goods_id: 3,
			goods_name: "goods1",
			goods_img_url: "xxx"
		}
	]
}

② 获取绘画作品列表。
请求格式:

http://api.mculover666.cn:9999/twkk/list/drawing

返回结果:

{
	goods_num: 3,
	goods_item: [
		{
			goods_id: 4,
			goods_name: "goods1",
			goods_img_url: "xxx"
		},
		{
			goods_id: 5,
			goods_name: "goods1",
			goods_img_url: "xxx"
		},
		{
			goods_id: 6,
			goods_name: "goods1",
			goods_img_url: "xxx"
		}
	]
}

③ 获取证书列表
请求格式:

http://api.mculover666.cn:9999/twkk/list/certificate

返回结果:

{
	goods_num: 3,
	goods_item: [
		{
			goods_id: 6,
			goods_name: "goods1",
			goods_img_url: "xxx"
		},
		{
			goods_id: 7,
			goods_name: "goods1",
			goods_img_url: "xxx"
		},
		{
			goods_id: 8,
			goods_name: "goods1",
			goods_img_url: "xxx"
		}
	]
}

二、安装Flask

打开命令行,创建一份python虚拟环境:

python3 -m venv venv

在当前终端激活虚拟环境:

.\venv\Scripts\Activate.ps1

激活虚拟环境后,安装Flask:

pip install Flask

查看安装结果:

pip list

Flask搭建一个API服务器的步骤

编写一个HelloWorld测试一下:

from flask import Flask

app = Flask(__name__)

@app.route('/')
def hello_world():
    return 'Helloworld'

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

Flask搭建一个API服务器的步骤

Flask参考教程:https://www.w3cschool.cn/flask/

三、代码实现

# 导入Flask类
from flask import Flask, redirect, url_for, render_template
import json

# 使用当前模块的名称构建Flask app
app = Flask(__name__)

# 装饰器,设置根目录url调用函数
@app.route('/twkk')
def index():
    version = "v1.0.0"
    return render_template('index.html', app_version=version)

# 管理员url
@app.route('/twkk/admin')
def hello_admin():
    return 'Hello admin'

# 获取分类列表
@app.route('/twkk/list/<category>', methods=["GET"])
def get_item_list(category):
    #读取json文件内容
    try:
        if category == 'drawing':
            with open('drawing.json', 'r') as fp:
                json_data = json.load(fp)
                res_data = json.dumps(json_data)
                return res_data
        elif category == 'hand_made':
            with open('hand_made.json', 'r') as fp:
                json_data = json.load(fp)
                res_data = json.dumps(json_data)
                return res_data
        elif category == 'certificate':
            with open('certificate.json', 'r') as fp:
                json_data = json.load(fp)
                res_data = json.dumps(json_data)
                return res_data
    except:
        return ""

# 运行程序
if __name__ == '__main__':
    app.run()

四、API测试

1. 根目录测试

/twkk

Flask搭建一个API服务器的步骤

2. 列表拉取测试

curl localhost:5000/twkk/list/hand_made

Flask搭建一个API服务器的步骤

curl localhost:5000/twkk/list/drawing

Flask搭建一个API服务器的步骤

curl localhost:5000/twkk/list/certificate

Flask搭建一个API服务器的步骤

到此这篇关于Flask搭建一个API服务器的步骤的文章就介绍到这了,更多相关Flask搭建API服务器内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
python获取各操作系统硬件信息的方法
Jun 03 Python
python如何重载模块实例解析
Jan 25 Python
对python的文件内注释 help注释方法
May 23 Python
python 对多个csv文件分别进行处理的方法
Jan 07 Python
Python实现的在特定目录下导入模块功能分析
Feb 11 Python
python爬虫租房信息在地图上显示的方法
May 13 Python
python基于paramiko将文件上传到服务器代码实现
Jul 08 Python
Python 控制终端输出文字的实例
Jul 12 Python
win10下opencv-python特定版本手动安装与pip自动安装教程
Mar 05 Python
通过Python实现一个简单的html页面
May 16 Python
Python3中的tuple函数知识点讲解
Jan 03 Python
Python数据分析之pandas函数详解
Apr 21 Python
Python趣味挑战之给幼儿园弟弟生成1000道算术题
May 28 #Python
解决Python中的modf()函数取小数部分不准确问题
May 28 #Python
利用Python+OpenCV三步去除水印
python实现自定义日志的具体方法
May 28 #Python
python 爬取京东指定商品评论并进行情感分析
python b站视频下载的五种版本
May 27 #Python
教你怎么用python selenium实现自动化测试
You might like
ThinkPHP3.1数据CURD操作快速入门
2014/06/19 PHP
刷新页面实现方式总结(HTML,ASP,JS)
2008/11/13 Javascript
JavaScript创建对象的写法
2013/08/29 Javascript
jquery自定义插件开发之window的实现过程
2016/05/06 Javascript
Javascript实现前端简单的路由实例
2016/09/11 Javascript
AngularJS中isolate scope的用法分析
2016/11/22 Javascript
Bootstrap基本组件学习笔记之列表组(11)
2016/12/07 Javascript
Bootstrap CSS布局之代码
2016/12/17 Javascript
详解webpack+es6+angular1.x项目构建
2017/05/02 Javascript
Vue学习笔记进阶篇之vue-cli安装及介绍
2017/07/18 Javascript
解决Vue2.0自带浏览器里无法打开的原因(兼容处理)
2017/07/28 Javascript
react 父组件与子组件之间的值传递的方法
2017/09/14 Javascript
es6数值的扩展方法
2019/03/11 Javascript
vue动态配置模板 'component is'代码
2019/07/04 Javascript
Vue快速实现通用表单验证的方法
2020/02/24 Javascript
jQuery实现可以计算进制转换的计算器
2020/10/19 jQuery
[46:23]OG vs EG 2018国际邀请赛淘汰赛BO3 第一场 8.23
2018/08/24 DOTA
浅谈pandas中Dataframe的查询方法([], loc, iloc, at, iat, ix)
2018/04/10 Python
解决Pycharm 包已经下载,但是运行代码提示找不到模块的问题
2019/08/31 Python
Tensorflow卷积实现原理+手写python代码实现卷积教程
2020/05/22 Python
pycharm 对代码做静态检查操作
2020/06/09 Python
详解通过变换矩阵实现canvas的缩放功能
2019/01/14 HTML / CSS
彪马土耳其官网:PUMA土耳其
2019/07/14 全球购物
毕业生毕业总结的自我评价范文
2013/11/02 职场文书
初中英语教学反思
2014/01/25 职场文书
高一新生军训感言
2014/03/02 职场文书
欢迎家长标语
2014/10/08 职场文书
2014年化工厂工作总结
2014/11/25 职场文书
聚众斗殴罪辩护词
2015/05/21 职场文书
2015年学校办公室工作总结
2015/05/26 职场文书
复兴之路观后感3000字
2015/06/02 职场文书
2016年党员学习廉政准则心得体会
2016/01/20 职场文书
思想品德课教学反思
2016/02/24 职场文书
社区结对共建协议书
2016/03/23 职场文书
html5调用摄像头实例代码
2021/06/28 HTML / CSS
js中Object.create实例用法详解
2021/10/05 Javascript