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中的两个内置模块介绍
Apr 05 Python
用tensorflow构建线性回归模型的示例代码
Mar 05 Python
对python 自定义协议的方法详解
Feb 13 Python
对Python强大的可变参数传递机制详解
Jun 13 Python
Python 3 实现定义跨模块的全局变量和使用教程
Jul 07 Python
python函数的作用域及关键字详解
Aug 20 Python
python2与python3爬虫中get与post对比解析
Sep 18 Python
Python3操作读写CSV文件使用包过程解析
Apr 10 Python
基于python 凸包问题的解决
Apr 16 Python
Python实现图片查找轮廓、多边形拟合、最小外接矩形代码
Jul 14 Python
15个应该掌握的Jupyter Notebook使用技巧(小结)
Sep 23 Python
matplotlib bar()实现多组数据并列柱状图通用简便创建方法
Feb 24 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+MySql实现一个简单的留言板
2020/07/19 PHP
javascript十个最常用的自定义函数(中文版)
2009/09/07 Javascript
jQuery操作input值的各种方法总结
2013/11/21 Javascript
javascript学习笔记(七)Ajax和Http状态码
2014/10/08 Javascript
node.js中的http.request方法使用说明
2014/12/14 Javascript
jQuery中end()方法用法实例
2015/01/08 Javascript
js实现可兼容IE、FF、Chrome、Opera及Safari的音乐播放器
2015/02/11 Javascript
在Ubuntu系统上安装Ghost博客平台的教程
2015/06/17 Javascript
全面介绍javascript实用技巧及单竖杠
2016/07/18 Javascript
jQuery简单注册和禁用全局事件的方法
2016/07/25 Javascript
js中的eval()函数把含有转义字符的字符串转换成Object对象的方法
2016/12/02 Javascript
详解Angular.js数据绑定时自动转义html标签及内容
2017/03/30 Javascript
无循环 JavaScript(map、reduce、filter和find)
2017/04/08 Javascript
nodejs分离html文件里面的js和css的方法
2019/04/09 NodeJs
vue 验证码界面实现点击后标灰并设置div按钮不可点击状态
2019/10/28 Javascript
jQuery实现动态加载瀑布流
2020/09/01 jQuery
微信小程序实现自定义动画弹框/提示框的方法实例
2020/11/06 Javascript
vue-cli4.0多环境配置变量与模式详解
2020/12/30 Vue.js
[06:59]DOTA2-DPC中国联赛3月7日Recap集锦
2021/03/11 DOTA
Python中的ConfigParser模块使用详解
2015/05/04 Python
Python聚类算法之凝聚层次聚类实例分析
2015/11/20 Python
Python+OpenCV图片局部区域像素值处理详解
2019/01/23 Python
Python mutiprocessing多线程池pool操作示例
2019/01/30 Python
Python docx库用法示例分析
2019/02/16 Python
通过python实现随机交换礼物程序详解
2019/07/10 Python
pytorch 模型可视化的例子
2019/08/17 Python
Python 实现将numpy中的nan和inf,nan替换成对应的均值
2020/06/08 Python
CSS3中的注音对齐属性ruby-align用法指南
2016/07/01 HTML / CSS
印尼旅游网站:via
2017/11/12 全球购物
Lulu & Georgia官方网站:购买地毯、家具、抱枕、壁纸、床上用品等
2018/03/19 全球购物
纽约和芝加哥当天送花:Ode à la Rose
2019/07/05 全球购物
财务管理专业推荐信
2013/11/19 职场文书
毕业生自我鉴定实例
2014/01/21 职场文书
无锡灵山大佛导游词
2015/02/09 职场文书
城镇居民医疗保险工作总结
2015/08/10 职场文书
Nginx 路由转发和反向代理location配置实现
2021/11/11 Servers