图片上传实现步骤
创作时间:
作者:
@小白创作中心
图片上传实现步骤
引用
CSDN
1.
https://blog.csdn.net/hpxjiayou/article/details/145061144
本文将详细介绍如何实现图片上传功能,包括后端使用Express框架和前端使用React框架的具体实现步骤。通过本文的学习,读者可以掌握图片上传功能的实现方法,为开发相关应用提供参考。
后端实现步骤
- 安装multiparty第三方模块,用于接收客户端上传的图片数据
//使用npm安装
npm install multiparty
//使用yarn安装
yarn add multiparty
导入multiparty模块,定义一个图片上传的路由(上传方式必须是post请求)
在项目目录下新建一个文件夹,作用是存放客户端上传过来的文件,配置静态资源访问目录
//导入multiparty模块
var multiparty = require("multiparty")
router.post('/uploadimg',(req,res)=>{
//定义一个multiparty类型的对象,接收客户端上传的数据
let form = new multiparty.Form()
//为表单对象定义一个上传文件的目标路径
form.uploadDir='upload'
//接收上传的文件
form.parse(req,(err,a,imgData)=>{
//可以将三个参数打印查看类型,其中imgData存放的是图片的信息
//console.log(err);
//console.log(a);
//console.log(imgData);
//将图片路径返回到客户端
res.send({
code:200,
path:"http://localhost:3000/"+imgData.file[0].path
})
})
})
前端实现步骤
前端使用了组件库实现图片上传的效果,需要先安装antd组件库,注意要安装与官网相同的版本
npm install antd@5.23.0
import { Button, message, Upload } from 'antd';
export default function UploadImg() {
const props = {
//发到后台的文件参数名
name: 'file',
//上传的地址
action: 'http://localhost:3000/uploadimg',
//设置上传的请求头部,IE10 以上有效
headers: {
authorization: 'authorization-text',
},
//上传文件改变时的回调,上传每个阶段都会触发该事件
onChange(info) {
//file是当前操作的文件对象
if (info.file.status !== 'uploading') {
//上传成功
//resopnse包含后端返回的数据
console.log(info.file.response,"111");
}
if (info.file.status === 'done') {
message.success(`${info.file.name} file uploaded successfully`);
} else if (info.file.status === 'error') {
//上传失败
message.error(`${info.file.name} file upload failed.`);
}
},
};
return <>
<Upload {...props}>
<Button>上传图片</Button>
</Upload>
</>
}
通过以上步骤,可以实现一个简单的图片上传功能。前端通过antd组件库实现图片上传的界面和交互,后端通过multiparty模块接收并处理上传的图片数据,最后将图片保存到指定的目录并返回图片的访问路径。
热门推荐
磁共振做完医生能马上看到结果吗
我国学者揭示肥胖患者体重减轻速率与痛风发病及复发的关系
饮食致痛风虽只20%,但多数皆是此引起,痛风专家张卓揭秘!
WRC 漂移的历史发展是怎样的?
WRC 赛车的赛事规则有哪些?
一个师有多少人?中国近代军事编制演变史
16S rRNA 基因测序:概念、原理、方法、步骤、应用
超声波清洗机洗牙套的最佳选择及注意事项
如何选择满足需求的居住小区?这种选择如何提升生活舒适度?
自然地理与资源环境专业大学生职业生涯发展指南
重积分的换序(简明微积分)
纪录片配音语言风格(纪录片配音语言风格分析)
老年眼睛模糊看不清怎么治
教你用生辰八字取名字
体育专业的就业方向
高压细水雾灭火系统:数据中心消防安全的定制化解决方案
2025年双春年是本命年的人好不好
运动饮食时间安排
实验室安全事故与应急处理措施
超大型 SUV 的内部空间如何合理利用?
“中国好人”游文晃:书写“雷锋传人”感人故事
自然风格在茶室装饰设计中的应用探究
普洱茶搭配花卉指南:寻找风味组合
草莓升糖指数高不高
雪地靴的清洗与保养指南(轻松解决雪地靴的清洗与保养问题)
喜鹊是怎么筑巢的?不可思议的鸟类建筑师——揭秘喜鹊巢穴建造全过程!
喜鹊是怎么筑巢的?揭秘鸟类建筑师的精妙工程
汪孟恭强推!国潮风杂蔬炒饭,一口尝尽营养与美味
卡介苗最晚什么时候打?三岁前需完成接种
卡介苗接种时间安排及注意事项