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 正则式使用心得
May 07 Python
用Python编写简单的微博爬虫
Mar 04 Python
Python列出一个文件夹及其子目录的所有文件
Jun 30 Python
python实现单线程多任务非阻塞TCP服务端
Jun 13 Python
基于Python数据可视化利器Matplotlib,绘图入门篇,Pyplot详解
Oct 13 Python
python网络爬虫之如何伪装逃过反爬虫程序的方法
Nov 23 Python
Python基于分析Ajax请求实现抓取今日头条街拍图集功能示例
Jul 19 Python
Django处理多用户类型的方法介绍
May 18 Python
python如果快速判断数字奇数偶数
Nov 13 Python
解决django model修改添加字段报错的问题
Nov 18 Python
Python内置方法实现字符串的秘钥加解密(推荐)
Dec 09 Python
Python 可视化神器Plotly详解
Dec 26 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
discuz7 phpMysql操作类
2009/06/21 PHP
php通过ajax实现双击table修改内容
2014/04/28 PHP
php使用pack处理二进制文件的方法
2014/07/03 PHP
php采用curl模仿登录人人网发布动态的方法
2014/11/07 PHP
jQuery-Tools-overlay 使用介绍
2012/07/14 Javascript
js获取某月的最后一天日期的简单实例
2013/06/22 Javascript
jquery解析xml字符串简单示例
2014/04/11 Javascript
Javascript 实现图片无缝滚动
2014/12/19 Javascript
javascript带回调函数的异步脚本载入方法实例分析
2015/07/02 Javascript
jquery使用ul模拟select实现表单美化的方法
2015/08/18 Javascript
理解JS绑定事件
2016/01/19 Javascript
javascript的正则匹配方法学习
2016/02/24 Javascript
react以create-react-app为基础创建项目
2018/03/14 Javascript
vue小白入门教程
2018/04/02 Javascript
小程序和web画三角形实现解析
2019/09/02 Javascript
JS对象属性的检测与获取操作实例分析
2020/03/17 Javascript
vue组件库的在线主题编辑器的实现思路
2020/04/03 Javascript
[07:06]2018DOTA2国际邀请赛寻真——卫冕冠军Team Liquid
2018/08/10 DOTA
python进阶教程之循环相关函数range、enumerate、zip
2014/08/30 Python
用Python操作字符串之rindex()方法的使用
2015/05/19 Python
Python对文件和目录进行操作的方法(file对象/os/os.path/shutil 模块)
2017/05/08 Python
python通过opencv实现批量剪切图片
2017/11/13 Python
用python与文件进行交互的方法
2018/03/01 Python
Python threading的使用方法解析
2019/08/28 Python
python实现遍历文件夹图片并重命名
2020/03/23 Python
Django如何使用jwt获取用户信息
2020/04/21 Python
Django CBV模型源码运行流程详解
2020/08/17 Python
python中@property的作用和getter setter的解释
2020/12/22 Python
使用CSS3制作倾斜导航条和毛玻璃效果
2017/09/12 HTML / CSS
REISS英国官网:伦敦High Street最受欢迎品牌
2016/12/21 全球购物
人力资源专业推荐信
2013/11/29 职场文书
人事行政经理岗位职责
2014/06/18 职场文书
刘公岛导游词
2015/02/05 职场文书
护士先进个人总结
2015/02/13 职场文书
mysql中DCL常用的用户和权限控制
2022/03/31 MySQL
Python字符串格式化方式
2022/04/07 Python