Flask搭建一个API服务器的步骤

 更新时间:2021年05月28日 09:05:57   作者:Mculover666  
Flask真是一个强大且简介的web框架,能够快速搭建web服务器,本文主要介绍了Flask搭建一个API服务器的步骤,分享给大家,感兴趣的可以了解一下

一、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


编写一个HelloWorld测试一下:

from flask import Flask

app = Flask(__name__)

@app.route('/')
def hello_world():
    return 'Helloworld'

if __name__ == '__main__':
    app.run()

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

2. 列表拉取测试

curl localhost:5000/twkk/list/hand_made

在这里插入图片描述

curl localhost:5000/twkk/list/drawing

curl localhost:5000/twkk/list/certificate

到此这篇关于Flask搭建一个API服务器的步骤的文章就介绍到这了,更多相关Flask搭建API服务器内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Python时间处理模块Time和DateTime

    Python时间处理模块Time和DateTime

    这篇文章主要为大家介绍了Python时间处理模块Time和DateTime使用示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-06-06
  • python在windows下创建隐藏窗口子进程的方法

    python在windows下创建隐藏窗口子进程的方法

    这篇文章主要介绍了python在windows下创建隐藏窗口子进程的方法,涉及Python使用subprocess模块操作进程的相关技巧,需要的朋友可以参考下
    2015-06-06
  • 梳理总结Python开发中需要摒弃的18个坏习惯

    梳理总结Python开发中需要摒弃的18个坏习惯

    大家好,今天给大家分享 18 个 Python 初学者常有的坏习惯,这些坏习惯不仅影响 Python 代码的可读性,而且 影响 Python 的运行性能,摒弃这些坏习惯并以 Pythonic 的方式编写代码,提高的不仅仅是你的代码质量,也给阅读代码的人留下好印象
    2022-01-01
  • python基础之变量和数据类型

    python基础之变量和数据类型

    这篇文章主要介绍了python的变量和数据类型,实例分析了Python中返回一个返回值与多个返回值的方法,需要的朋友可以参考下
    2021-10-10
  • pandas 数据类型转换的实现

    pandas 数据类型转换的实现

    这篇文章主要介绍了pandas 数据类型转换的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-12-12
  • python函数式编程学习之yield表达式形式详解

    python函数式编程学习之yield表达式形式详解

    这篇文章主要给大家介绍了关于python函数式编程学习之yield表达式形式的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用python具有一定的参考学习价值,需要的朋友们下面随着小编来一起看看吧。
    2018-03-03
  • 在keras下实现多个模型的融合方式

    在keras下实现多个模型的融合方式

    这篇文章主要介绍了在keras下实现多个模型的融合方式,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-05-05
  • python随机3分钟发送一次消息完整代码

    python随机3分钟发送一次消息完整代码

    最近我接到这样的任务需求有一个实时任务,想要间隔3分钟发送,最近的一次消息,接下来通过本文给大家分享python随机3分钟发送一次消息,需要的朋友可以参考下
    2024-03-03
  • python Tornado事件循环示例源码解析

    python Tornado事件循环示例源码解析

    这篇文章主要为大家介绍了python Tornado事件循环示例源码解析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-09-09
  • Python3使用TCP编写一个简易的文件下载器功能

    Python3使用TCP编写一个简易的文件下载器功能

    这篇文章主要介绍了Python3使用TCP编写一个简易的文件下载器功能,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-05-05

最新评论