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中利用函数装饰器实现备忘功能
Mar 30 Python
Django 根据数据模型models创建数据表的实例
May 27 Python
python3安装speech语音模块的方法
Dec 24 Python
利用django+wechat-python-sdk 创建微信服务器接入的方法
Feb 20 Python
详解程序意外中断自动重启shell脚本(以Python为例)
Jul 26 Python
Python selenium的基本使用方法分析
Dec 21 Python
tensorflow之自定义神经网络层实例
Feb 07 Python
python_array[0][0]与array[0,0]的区别详解
Feb 18 Python
Python如何读取、写入JSON数据
Jul 28 Python
python Paramiko使用示例
Sep 21 Python
python爬虫scrapy框架的梨视频案例解析
Feb 20 Python
Python基于百度AI实现抓取表情包
Jun 27 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
ThinkPHP的模版中调用session数据的方法
2014/07/01 PHP
php foreach正序倒序输出示例代码
2014/07/01 PHP
总结对比php中的多种序列化
2016/08/28 PHP
yii2使用GridView实现数据全选及批量删除按钮示例
2017/03/01 PHP
PHP基于rabbitmq操作类的生产者和消费者功能示例
2018/06/16 PHP
JavaScript中null与undefined分析
2009/07/25 Javascript
Js base64 加密解密介绍
2013/10/11 Javascript
JS判断表单输入是否为空(示例代码)
2013/12/23 Javascript
js带点自动图片轮播幻灯片特效代码分享
2015/09/07 Javascript
详解JavaScript函数对象
2015/11/15 Javascript
解决Window10系统下Node安装报错的问题分析
2016/12/13 Javascript
jQuery插件FusionCharts实现的2D柱状图效果示例【附demo源码下载】
2017/03/06 Javascript
微信小程序 页面滑动事件的实例详解
2017/10/12 Javascript
详解vue.js移动端配置flexible.js及注意事项
2019/04/10 Javascript
Vue.js标签页组件使用方法详解
2019/10/19 Javascript
node.js开发辅助工具nodemon安装与配置详解
2020/02/06 Javascript
Vue中keep-alive组件的深入理解
2020/08/23 Javascript
利用Python的装饰器解决Bottle框架中用户验证问题
2015/04/24 Python
Python OpenCV调用摄像头检测人脸并截图
2020/08/20 Python
Python实现屏幕录制功能的代码
2020/03/02 Python
基于Jquery和Css3代码制作可以缩放的搜索框
2015/11/19 HTML / CSS
L’AGENCE官网:加州女装品牌
2018/06/03 全球购物
英文版餐饮业求职信
2013/10/18 职场文书
教学大赛获奖感言
2014/01/15 职场文书
2014学校庆三八妇女节活动总结
2014/03/01 职场文书
植树造林的宣传标语
2014/06/23 职场文书
村党支部群众路线教育实践活动对照检查材料
2014/09/26 职场文书
普通党员自我剖析材料
2014/10/07 职场文书
2014年党员个人剖析材料
2014/10/08 职场文书
赢在执行观后感
2015/06/16 职场文书
JS如何实现基于websocket的多端桥接平台
2021/05/14 Javascript
Python函数中的不定长参数相关知识总结
2021/06/24 Python
React 并发功能体验(前端的并发模式)
2021/07/01 Javascript
详解Vue的列表渲染
2021/11/20 Vue.js
使用 Apache 反向代理的设置技巧
2022/01/18 Servers
Pandas实现批量拆分与合并Excel的示例代码
2022/05/30 Python