Node使用 Express框架,实现文件上传
一 安装依赖包
npm install multer --save
二 客户端上传文件
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
</head>
<body>
<form action="http://localhost:3000/test/upload" method="post" enctype="multipart/form-data">
<div>
<input name="mobile" placeholder="请输入电话号码"/>
</div>
<div>
<input type="file" name="photo" />
</div>
<div>
<button type="submit">提交</button>
</div>
</form>
</body>
</html>
三 服务器接受文件
const express = require('express');
const router = express.Router();
const mysql = require('mysql');
var multer = require('multer');
var upload = multer({
storage : multer.diskStorage({ // 只能从dest、storage中二选一
destination : (req,file,cb)=>{
cb(null,process.cwd()+'/uploads');
},
filename : (req,file,cb)=>{ // 将上传的文件重新命名
cb(null,file.fieldname+new Date().getTime()+file.originalname.substring(file.originalname.lastIndexOf('.')));
}
})
});
let conn = mysql.createConnection({
host : 'localhost',
user : 'root',
password : '123456',
database : 'ionic'
});
conn.connect();
/*
* 接收图片
*/
router.post('/upload',upload.single('photo'),(req,res,next)=>{
res.setHeader('Access-Control-Allow-Origin','*'); // 跨域
let sql = 'update user set photo=? where mobile=?';
let params = [req.file.filename,req.body.mobile];
conn.query(sql,params,(err,result)=>{ // 写入数据库
if(err){
res.json({
code : 0,
msg : '[INSERT ERROR] - '+err.message
});
}else{
res.json({
code : 1,
msg : '上传成功',
data : {
filename : req.file.filename
}
});
}
});
});
module.exports = router;
Node使用 Express框架,实现文件上传的更多相关文章
- node.js使用express框架进行文件上传
关于node.js使用express框架进行文件上传,主要来自于最近对Settings-Sync插件做的研究.目前的研究算是取得的比较好的进展.Settings-Sync中通过快捷键上传文件,其实主要 ...
- 使用Node.js的Express框架进行文件上传
我们先创建一个Express项目,要使用文件上传的功能还需要下载multer模块. npm install --save multer 下面我们在public文件夹下创建upload.html,内容如 ...
- jersey框架实现文件上传
jersey框架是一个开源的RESTful的框架,实现了实现了JAX-RS规范,进一步地简化 RESTful service 和 client 开发.当然而且是必须的,jersey对文件的上传和下载也 ...
- layUI框架中文件上传前后端交互及遇到的相关问题
下面我将讲述一下我在使用layUI框架中文件上传所遇到的问题: 前端jsp页面: <div class="layui-form-item"> <label cla ...
- 使用SpringMVC框架实现文件上传和下载功能
使用SpringMVC框架实现文件上传和下载功能 (一)单个文件上传 ①配置文件上传解释器 <!—配置文件上传解释器 --> <mvc:annotation-driven>&l ...
- 关于我使用spring mvc框架做文件上传时遇到的问题
非常感谢作者 原文:https://blog.csdn.net/lingirl/article/details/1714806 昨天尝试着用spring mvc框架做文件上传,犯了挺多不该犯的毛病问题 ...
- SpringMVC框架06——文件上传与下载
1.文件上传 Spring MVC框架的文件上传是基于commons-fileupload组件的文件上传,只不过Spring MVC框架在原有文件上传组件上做了进一步封装,简化了文件上传的代码实现. ...
- 笨鸟先飞之Java(一)--使用struts2框架实现文件上传
无论是.net还是Java,我们最常接触到的就是文件的上传和下载功能,在Java里要实现这两个经常使用功能会有非常多种解决方案,可是struts2的框架却能给我们一个比較简单的方式,以下就一起来看吧: ...
- 第三百一十九节,Django框架,文件上传
第三百一十九节,Django框架,文件上传 1.自定义上传[推荐] 请求对象.FILES.get()获取上传文件的对象上传对象.name获取上传文件名称上传对象.chunks()获取上传数据包,字节码 ...
- node.js中 express + multer 处理文件上传
multer中间件,可以很方便的结合express处理用户表单上传的文件. 一.安装multer npm install multer 二.处理单个文件上传 const express = requi ...
随机推荐
- TFrame bug
delphi 10.1.2 工程里有很多fram 正确的工程文件dproj中fram的定义是 <DCCReference Include="Unit15frame.pas"& ...
- 使用原生js实现前端分页功能
背景: 从后台提取出来数据,在前端进行分页. 代码: user-manage.js window.onload = function(){ var result = { message : " ...
- DataGrip 连接数据库查询出来的结果乱码的问题
打开连接数据源选项 选择 Advanced----Charset 填入 GBK 应用即可 目前遇到的是连接 SYbase数据库
- laravel视图$errors为空
最近用laravel5.2的validator时,完全参考手册操作,结果控制器$validator->errors()->all()正常显示错误信息,$validator->fail ...
- C语言基础入门
搭建Windows平台C/C++开发环境 第1步: 第2步: 第3步: 第4步: 第5步: 第6步: 第7步: 第8步: 第9步: 第10步: 第11步: 第12步: 第13步: 第14步: 第15步 ...
- openvpn 批量生成用户脚本
#/bin/bash for user in "$@" do echo "新增用户:$user" if [ -d "/etc/openvpn/clie ...
- mysql主从复制搭建中几种log和pos详解
一.主从原理 Replication 线程 Mysql的 Replication 是一个异步的复制过程,从一个 Mysql instace(我们称之为 Master)复制到另一个 Mysql in ...
- RH_KABI_RESERVE的使用
struct mm_struct { .......... #if defined(__GENKSYMS__) || !defined(CONFIG_SPAPR_TCE_IOMMU) /* We're ...
- 【382】利用 namedtuple 实现函数添加属性
namedtuple 能够实现类似类的效果,tuple 的元素可以通过属性的形式返回,如下所示: from collections import namedtuple Student = namedt ...
- thinkphp中使用phpexecl多表格应用
去PHPExcel官网下载相应的版本,放到thinkphp3.2版本下的ThinkPHP/Library/Vendor/PHPExcel文件夹下 导出表格: //多个单元格(已测试) public ...