Node +FastDFS 实现文件的上传下载
npm install fastdfsl-client
//--------------------------------配置文件------------------------------------------------
let FdfsClient = require('fastdfs-client');
let fdfs = new FdfsClient({
// tracker servers
trackers: [
{
host: '49.233.50.185',
port: 22122
}
],
// 默认超时时间10s
timeout: 10000,
// 默认后缀
// 当获取不到文件后缀时使用
defaultExt: 'txt',
// charset默认utf8
charset: 'utf8'
}); //--------------------------------上传文件--------------------------------------------------
// fdfs.upload('E:\\wsl1.jpeg', {
// // 上传方法 [upload, uploadAppender, append, modify], 默认为upload
// method: 'upload',
// // 指定文件存储的group,不指定则由tracker server分配
// group: 'group1',
// // method为append或modify指定追加的源文件
// fileId: 'group1/M00/00/0F/wKgBeFXlZJuAdsBZAAPm5H9JxDA153.jpg',
// // file bytes, file参数为ReadableStream时必须指定
// size: 1024,
// // method为modify指定追加的源文件的起始点
// offset: 10240,
// // 上传文件的后缀,不指定则获取file参数的后缀,不含(.)
// ext: 'jpg'
// }).then(function(fileId) {
// // fileId 为 group + '/' + filename
// console.log("上传图片的返回==============>fileId 为 group + '/' + filename:======>>"+fileId);
// }).catch(function(err) {
// console.error(err);
// }); //--------------------------------删除文件--------------------------------------------------
// let fileId = "group1/M00/00/00/rBUACF2B-E-AdwypAAHlUvTq5Uw301.jpg";
// fdfs.del(fileId).then(function() {
// console.log("删除成功:========>>")
// }).catch(function(err) {
// console.error("删除失败:=======>>",+err);
// }); //---------------------------------查看文件--------------------------------------------------
// let fileId = "group1/M00/00/00/rBUACF2B8-eARPdgAAHlUvTq5Uw20.jpeg";
// fdfs.getFileInfo(fileId).then(function(fileInfo) {
// // fileInfo有4个属性
// // {
// // // 文件大小
// // size:
// // // 文件创建的时间戳,单位为秒
// // timestamp:
// // // 校验和
// // crc32:
// // // 最初上传到的storage server的ip
// // addr:
// // }
// console.log({
// "size":fileInfo.size,
// "timestamp":fileInfo.timestamp,
// "crc32":fileInfo.crc32,
// "addr":fileInfo.addr,
// });
// }).catch(function(err) {
// console.error(err);
// }); //----------------------------------下载文件----------------------------------------------
// let fileId = "group1/M00/00/00/rBUACF2B96CAf2NpAAHlUvTq5Uw32.jpeg";
// fdfs.download(fileId,'test_download.gif').then(function() {
// console.log("下载完成")
// }).catch(function(err) {
// console.error(err);
// });

Node +FastDFS 实现文件的上传下载的更多相关文章
- 在Window的IIS中创建FTP的Site并用C#进行文件的上传下载
文件传输协议 (FTP) 是一个标准协议,可用来通过 Internet 将文件从一台计算机移到另一台计算机. 这些文件存储在运行 FTP 服务器软件的服务器计算机上. 然后,远程计算机可以使用 FTP ...
- 创建FTP的Site并用C#进行文件的上传下载
创建FTP的Site并用C#进行文件的上传下载 文件传输协议 (FTP) 是一个标准协议,可用来通过 Internet 将文件从一台计算机移到另一台计算机. 这些文件存储在运行 FTP 服务器软件的服 ...
- linux链接及文件互相上传下载
若排版紊乱可查看我的个人博客原文地址 基本操作 本篇博客主要介绍如何去链接远程的linux主机及如何实现本地与远程主机之间文件的上传下载操作,下面的linux系统是CentOS6.6 链接远程linu ...
- Spring实现文件的上传下载
背景:之前一直做的是数据库的增删改查工作,对于文件的上传下载比较排斥,今天研究了下具体的实现,发现其实是很简单.此处不仅要实现单文件的上传,还要实现多文件的上传. 单文件的下载知道了,多文件的下载呢? ...
- SocketIo+SpringMvc实现文件的上传下载
SocketIo+SpringMvc实现文件的上传下载 socketIo不仅可以用来做聊天工具,也可以实现局域网(当然你如果有外网也可用外网)内实现文件的上传和下载,下面是代码的效果演示: GIT地址 ...
- JAVAWEB之文件的上传下载
文件上传下载 文件上传: 本篇文章使用的文件上传的例子使用的都是原生技术,servelt+jdbc+fileupload插件,这也是笔者的习惯,当接触到某些从未接触过的东西时,总是喜欢用最原始的东西将 ...
- SSM框架之中如何进行文件的上传下载
SSM框架的整合请看我之前的博客:http://www.cnblogs.com/1314wamm/p/6834266.html 现在我们先看如何编写文件的上传下载:你先看你的pom.xml中是否有文件 ...
- python使用ftplib模块实现FTP文件的上传下载
python已经默认安装了ftplib模块,用其中的FTP类可以实现FTP文件的上传下载 FTP文件上传下载 # coding:utf8 from ftplib import FTP def uplo ...
- php文件夹上传下载控件分享
用过浏览器的开发人员都对大文件上传与下载比较困扰,之前遇到了一个php文件夹上传下载的问题,无奈之下自己开发了一套文件上传控件,在这里分享一下.希望能对你有所帮助. 以下是实例的部分脚本文件 这里我先 ...
随机推荐
- SpringBoot缓存技术
一.SpringBoot整合Ehhcache 添加maven依赖 <dependency> <groupId>org.springframework.boot</grou ...
- linux内核睡眠状态解析
1. 系统睡眠状态 睡眠状态是整个系统的全局低功耗状态,在这种状态下,用户空间的代码不能被执行并且整个系统的活动明显被降低 1.1 被支持的睡眠状态 取决于所运行平台的能力和配置选项,Linux内核能 ...
- LC 456. 132 Pattern
Given a sequence of n integers a1, a2, ..., an, a 132 pattern is a subsequence ai, aj, ak such that ...
- 【边缘计算】 Edge Computing: Vision and Challenges
原文地址: http://www.cs.wayne.edu/~weisong/papers/shi16-edge-computing.pdf ----------------------------- ...
- MySQL VARCHAR字段最大长度到底是多少
MySQL VARCHAR字段最大长度到底是多少 varchar(n),n表示什么? MySQL5.0.3之前varchar(n)这里的n表示字节数 MySQL5.0.3之后varchar(n)这 ...
- mysql插入数据时 insert IGNORE、ON DUPLICATE KEY UPDATE、replace into
转: mysql insert时几个操作DELAYED .IGNORE.ON DUPLICATE KEY UPDATE的区别 博客分类: mysql基础应用 mysql insert时几个操作DE ...
- 阶段5 3.微服务项目【学成在线】_day17 用户认证 Zuul_17-身份校验-身份校验过虑器编写
5 身份校验 5.1 需求分析 本小节实现网关连接Redis校验令牌: 1.从cookie查询用户身份令牌是否存在,不存在则拒绝访问 2.从http header查询jwt令牌是否存在,不存在则拒绝访 ...
- OpenStack Heat模板内部函数
Heat模板内部函数又称为Intrinsic functions. 注:Intrinsic functions只能用在 resource 的 properties 段 和 outputs 中. ...
- 【设计思路】Booking优化
https://www.uisdc.com/booking-redesign https://medium.muz.li/booking-com-ux-case-study-7ffb39e54791
- jquery取选中的checkbox的值
一. 在html的checkbox里,选中的话会有属性checked="checked". 如果用一个checkbox被选中,alert这个checkbox的属性"c ...