首页 > 编程语言 >【python】服务端和客户端 RESTful 接口上传 E

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

时间:2024-03-26 22:33:26浏览次数:27  
标签:文件 python RESTful Flask file 上传 服务端 客户端

哈喽,大家好,我是木头左,物联网搬砖工一名,致力于为大家淘出更多好用的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.”。

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

标签:文件,python,RESTful,Flask,file,上传,服务端,客户端
From: https://www.cnblogs.com/bigleft/p/18097791

相关文章

  • 使用python读取Excel文件
    在VBA里使用SAPGUIScripts执行批量操作很方便,如果不熟悉VBA,写起VBA代码感觉挺不方便的。下面是Python代码用来读取Excel文件里的内容,代码挺简单的。importopenpyxl#指定Excel文件路径excel_file='D:\data\11.xlsx'#打开Excel文件workbook=openpyxl.load_workbo......
  • python理论知识及python解释器和pycharm安装
    【一】编程和编程语言是什么【1】什么是编程编程就是将人类语言转换为计算机能够识别的语言【2】什么是编程语言编程语言就是人与计算机之间的语言【3】为什么要出现编程语言?最根本的原因就是计算机无法识别人类语言【4】为什么要编程?编程就是为了让计算机能够理解......
  • python安装过程
    【一】python安装过程【1】安装路径https://www.python.org/[2]选择win系统【3】搜索指定版本win系统快捷键【ctrl+f】macos系统快捷键【command+f】(1)打开Python解释器官网(2)点击Downloads选择macOS(3)下载安装程序【5】安装解释器(win)(1)双击安装好的程序......
  • 计算机基础以及python,pycharm安装
    计算机基础以及python|pycharm安装1编程和编程语言了解1.1什么是编程编程就是将人类语言转换成计算机识别的语言。1.2什么是编程语言人和人之间都会进行交流,人和人之间交流的媒介就是语言,所以编程语言就是人和计算机之间交流的语言。1.3为什么要出现编程语言最根本的原......
  • 【蓝桥杯省赛真题33】python单词排序 中小学青少年组蓝桥杯比赛 算法思维python编程省
     目录python单词排序一、题目要求1、编程实现2、输入输出二、算法分析三、程序编写四、程序说明五、运行结果六、考点分析七、 推荐资料1、蓝桥杯比赛2、考级资料3、其它资料python单词排序第十三届蓝桥杯青少年组python比赛省赛真题一、题目要求(注:input......
  • 趣味算法,猴子算法。python如何实现猴子算法
    给一只猴子一台打印机,虽然这只猴子根本不识字,但会乱按,经过一段时间后,在它乱按出来的单词里总能找到一些至少看起来是有意义的部分,比如一两个简短的单词,由此可以推出:只要给它足够长的时间,猴子甚至能完整地写出一本莎士比亚全集。这是不是听起来很有意思趣味算法,猴子算法。......
  • 05-python函数进阶和文件
    函数函数的多返回值变量间逗号隔开,可以多种类型defhello():return1,True,"hello"x,y,z=hello()函数的传参方式位置参数,根据位置传参defcan1(x,y,z):print(x,y,z)can1(2,4,8)关键字参数,根据k=v传参,可以和位置参数混用,位置参数需要在前defcan2......
  • 如何用Python绘制3D图形
        python绘制3D图形,包括了3D坐标系、曲面图、直方图、等高线图、热力图、散点图、文字标签七种样式,具体如下:一、绘制3D坐标系具体代码如下:importmatplotlib.pyplotaspltfrommpl_toolkits.mplot3dimportAxes3D#创建图形和坐标轴fig=plt.figure()ax=......
  • 如何用Python制作具备音效的定时器
        很多时候都需要应用到定时器,特别是参加各种比赛的时候,记录每个队员使用的时间,如何用python制作定时器,且看以下代码,主要分四个小案例,分别是页面版本的无音效定时器、应用程序版本的无音效定时器、页面版本的有音效定时器和应用程序版本的有音效定时器。(有音效的意思......
  • python爬虫小案例-re正则
    案例如下:1.使用正则表达式和文件操作爬取并保存“某吧”某帖子全部内容(该帖不少于5页。本次选取的是某吧中的NBA吧中的一篇帖子,帖子标题是“克莱和哈登,谁历史地位更高”。爬取的目标是帖子里面的回复内容。源程序如下:importcsvimportrequestsimportreimporttime......