【python】服务端和客户端 RESTful 接口上传 E

哈喽,大家好,我是木头左,物联网搬砖工一名,致力于为大家淘出更多好用的AI工具!

服务端代码

1. 安装 Flask 和 Flask-RESTful

需要安装 Flask 和 Flask-RESTful 这两个库。Flask 是一个轻量级的 Web 框架,而 Flask-RESTful 则是一个为 Flask 添加了 RESTful API 支持的扩展。

pip install Flask Flask-RESTful

2. 创建 Flask 应用

接下来,创建一个简单的 Flask 应用,并配置 RESTful API。

from flask import Flask, request
from flask_restful import Resource, Api

app = Flask(__name__)
api = Api(app)

3. 实现文件上传接口

现在,开始实现文件上传接口。在这个例子中,将使用 request.files 获取上传的文件,并将其保存到服务器上。

class UploadFile(Resource):
    def post(self):
        file = request.files['file']
        if file:
            file.save('uploads/' + file.filename)
            return {'message': '文件上传成功'}, 200
        else:
            return {'message': '文件上传失败'}, 400

4. 将接口添加到 API

在这个代码中,我们创建了一个名为UploadExcel的资源类,并定义了一个post方法。当客户端向服务器发送POST请求时,该方法会被调用。在这个方法中,我们从请求中获取文件,并将其保存到服务器的uploads文件夹中。如果文件上传成功,我们返回一个包含成功信息的字典;如果文件上传失败,我们返回一个包含错误信息的字典,并设置HTTP状态码为400。

运行服务端代码

在命令行中,切换到app.py所在的目录,然后运行以下命令启动服务端:

python app.py

现在,服务端已经启动并监听在5000端口。接下来,我们将编写客户端代码来测试这个接口。

客户端代码

2.1 安装所需库

在客户端,我们需要安装以下库:

  • requests:用于发送HTTP请求
  • openpyxl:用于操作Excel文件(可选)

可以使用以下命令安装这些库:

pip install requests openpyxl

2.2 编写客户端代码

首先,我们创建一个名为upload_excel.py的文件,然后编写以下代码:

以下是一个基本的 Python 代码示例,用于通过 RESTful 接口上传 Excel 文件:

import requests

url = 'http://example.com/upload'
file_path = '/path/to/excel/file.xlsx'

with open(file_path, 'rb') as f:
    r = requests.post(url, files={'file': f})

if r.status_code == 200:
    print('Upload successful.')
else:
    print('Upload failed.')

该代码使用了 Python 的 requests 库来发送 POST 请求,并将 Excel 文件作为文件流上传到指定的 RESTful 接口。在代码中,需要将 url 替换为实际的 RESTful 接口 URL,并将 file_path 替换为实际的 Excel 文件路径。如果上传成功,将输出“Upload successful.”,否则将输出“Upload failed.”。

我是木头左,感谢各位童鞋的:点赞、收藏和在看,我们下期更精彩!

posted @ 2024-03-26 22:27  木头左  阅读(26)  评论(0编辑  收藏  举报