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中去空格函数的用法
Aug 21 Python
使用SAE部署Python运行环境的教程
May 05 Python
python获取一组数据里最大值max函数用法实例
May 26 Python
基于python中staticmethod和classmethod的区别(详解)
Oct 24 Python
python 获取文件下所有文件或目录os.walk()的实例
Apr 23 Python
解决tensorflow测试模型时NotFoundError错误的问题
Jul 26 Python
利用python实现在微信群刷屏的方法
Feb 21 Python
django表单的Widgets使用详解
Jul 22 Python
在PyCharm中遇到pip安装 失败问题及解决方案(pip失效时的解决方案)
Mar 10 Python
在Python中使用K-Means聚类和PCA主成分分析进行图像压缩
Apr 10 Python
python进行二次方程式计算的实例讲解
Dec 06 Python
Python3中最常用的5种线程锁实例总结
Jul 07 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
PHP的ASP防火墙
2006/10/09 PHP
PHP 数组排序方法总结 推荐收藏
2010/06/30 PHP
php中禁止单个IP与ip段访问的代码小结
2012/07/04 PHP
ASP和PHP实现生成网站快捷方式并下载到桌面的方法
2014/05/08 PHP
PHP压缩图片功能的介绍
2019/03/21 PHP
jquery 元素控制(追加元素/追加内容)介绍及应用
2013/04/21 Javascript
JS复制内容到剪切板的实例代码(兼容IE与火狐)
2013/11/19 Javascript
jquery获取颜色在ie和ff下的区别示例介绍
2014/03/28 Javascript
JavaScript实现横线提示输入验证码随输入验证码输入消失的方法
2016/09/24 Javascript
微信小程序开发实战教程之手势解锁
2016/11/18 Javascript
解决前端跨域问题方案汇总
2016/11/20 Javascript
js的三种继承方式详解
2017/01/21 Javascript
ES6字符串模板,剩余参数,默认参数功能与用法示例
2017/04/06 Javascript
vue组件详解之使用slot分发内容
2018/04/09 Javascript
微信小程序中使用ECharts 异步加载数据的方法
2018/06/27 Javascript
原生JS实现音乐播放器
2021/01/26 Javascript
[04:12]第二届DOTA2亚洲邀请赛选手传记-Newbee.Sccc
2017/04/03 DOTA
python编写网页爬虫脚本并实现APScheduler调度
2014/07/28 Python
跟老齐学Python之Import 模块
2014/10/13 Python
CentOS安装pillow报错的解决方法
2016/01/27 Python
pandas 数据归一化以及行删除例程的方法
2018/11/10 Python
详解python selenium 爬取网易云音乐歌单名
2019/03/28 Python
Python实现九宫格式的朋友圈功能内附“马云”朋友圈
2019/05/07 Python
python如何以表格形式打印输出的方法示例
2019/06/21 Python
使用python的pandas为你的股票绘制趋势图
2019/06/26 Python
python开发之anaconda以及win7下安装gensim的方法
2019/07/05 Python
python系列 文件操作的代码
2019/10/06 Python
python单向链表的基本实现与使用方法【定义、遍历、添加、删除、查找等】
2019/10/24 Python
如何查看Django ORM执行的SQL语句的实现
2020/04/20 Python
3.15国际消费者权益日主题活动活动总结
2014/03/16 职场文书
奠基仪式主持词
2014/03/20 职场文书
2014年四风个人对照检查及整改措施
2014/10/28 职场文书
2015年保安个人工作总结
2015/04/02 职场文书
2017元旦晚会开幕词
2016/03/03 职场文书
MySQL令人咋舌的隐式转换
2021/04/05 MySQL
Springboot集成kafka高级应用实战分享
2022/08/14 Java/Android