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中关键字nonlocal和global的声明与解析
Mar 12 Python
使用python实现生成用户信息
Mar 20 Python
Python判断文件和字符串编码类型的实例
Dec 21 Python
scrapy爬虫实例分享
Dec 28 Python
python3连接MySQL数据库实例详解
May 24 Python
python 请求服务器的实现代码(http请求和https请求)
May 25 Python
ubuntu17.4下为python和python3装上pip的方法
Jun 12 Python
python生成xml时规定dtd实例方法
Sep 21 Python
python 绘制国旗的示例
Sep 27 Python
Python 操作SQLite数据库的示例
Oct 16 Python
python爬虫中抓取指数的实例讲解
Dec 01 Python
Anaconda配置各版本Pytorch的实现
Aug 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
收音机玩机评测 406 篇视频合集
2020/03/11 无线电
php初始化对象和析构函数的简单实例
2014/03/11 PHP
php版阿里云OSS图片上传类详解
2016/12/01 PHP
thinkPHP5.0框架独立配置与动态配置方法
2017/03/17 PHP
用javascript获取当页面上鼠标光标位置和触发事件的对象的代码
2009/12/09 Javascript
js+css实现增加表单可用性之提示文字
2013/06/03 Javascript
jQuery自带的一些常用方法总结
2014/09/03 Javascript
Javascript 多物体运动的实现
2014/12/24 Javascript
jQuery实现延迟跳转的方法
2015/06/05 Javascript
JS实现仿腾讯微博无刷新删除微博效果代码
2015/10/16 Javascript
jQuery实现textarea自动增长宽高的方法
2015/12/18 Javascript
轻松实现jquery选项卡切换效果
2016/10/10 Javascript
Vue组件选项props实例详解
2017/08/18 Javascript
node+express+ejs使用模版引擎做的一个示例demo
2017/09/18 Javascript
详解vue-cil和webpack中本地静态图片的路径问题解决方案
2017/09/27 Javascript
Angular2仿照微信UI实现9张图片上传和预览的示例代码
2017/10/19 Javascript
详谈构造函数加括号与不加括号的区别
2017/10/26 Javascript
vue单页开发父子组件传值思路详解
2018/05/18 Javascript
Vue项目引发的「过滤器」使用教程
2019/03/12 Javascript
Vue2.x通用条件搜索组件的封装及应用详解
2019/05/28 Javascript
Nest.js环境变量配置与序列化详解
2021/02/21 Javascript
[02:12]打造更好的电竞完美世界:完美盛典回顾篇
2018/12/19 DOTA
python 中split 和 strip的实例详解
2017/07/12 Python
TensorFlow实现RNN循环神经网络
2018/02/28 Python
python特性语法之遍历、公共方法、引用
2018/08/08 Python
利用Python实现微信找房机器人实例教程
2019/03/10 Python
Python3 串口接收与发送16进制数据包的实例
2019/06/12 Python
python3.6使用SMTP协议发送邮件
2020/05/20 Python
雅萌 (YA-MAN) :日本美容家电领域的龙头企业
2017/05/12 全球购物
农村门前三包责任书
2014/07/25 职场文书
四风问题自我剖析材料
2014/10/07 职场文书
2015年个人工作总结报告
2015/04/25 职场文书
教师节感想
2015/08/11 职场文书
2016春季校长开学典礼致辞
2015/11/26 职场文书
Vue的生命周期一起来看看
2022/02/24 Vue.js
SQL Server使用导出向导功能
2022/04/08 SQL Server