1.需要下载7牛啥的
const qiniu = require('qiniu')
const configs = require('../config/config')
var path = require('path')
var fs = require("fs")//操作文件
// 七牛
const qiniu = require('qiniu')
var _accessKey = configs.qiniu.AK;
var _secretKey = configs.qiniu.SK;
var mac = new qiniu.auth.digest.Mac(_accessKey, _secretKey);
var options = {
scope: configs.qiniu.Zone
};
var putPolicy = new qiniu.rs.PutPolicy(options);
var uploadToken = putPolicy.uploadToken(mac)
// 第二步:构建配置config 上传对应的空间地区
var config = new qiniu.conf.Config();
config.zone = qiniu.zone.Zone_z2; //华南
var formUploader = new qiniu.form_up.FormUploader(config);
var putExtra = new qiniu.form_up.PutExtra();
// 拿到express路由
const Router = express.Router()
Router.post('/qiniuUpload', upload.array('file', 2), function (req, res, next) {
var file = req.files
var arrPath = []
for (let i = 0; i < file.length; i++) {
var pathName = "upload/" + file[i].filename + '.' + file[i].originalname.split('.')[1]
console.log()
fs.rename(req.files[i].path, pathName, function (err) {
if (err) {
throw err;
}
})
var key = file[i].filename + '.' + file[i].originalname.split('.')[1]
// 文件上传 // path.resolve给相对路径变成绝对路径
formUploader.putFile(uploadToken, key, path.resolve(pathName), putExtra, function (respErr, respBody, respInfo) {
if (respErr) {
throw respErr;
}
if (respInfo.statusCode == 200) {
console.log(respBody);
} else {
console.log(respInfo.statusCode);
console.log(respBody);
}
})
// 存到数组
arrPath.push({path: configs.qiniu.URL + key})
// 删除上次图片
fs.unlinkSync(pathName);
}
res.json({code: 0, data: arrPath, msg: '图片上传成功'})
})
nodejs集成七牛云
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- 用CocoaPods导入SDK 导入头文件 官网获取两个key 获取token 项目中一般是由服务器来生成,这里...
- 七牛云是一个便捷的数据云存储平台。通过官方或社区社区SDK你可以方便通过程序上传文件到自己的空间中。下面的这个小 ...
- 这篇文章的内容紧接着上章的内容,上一篇讲了truffle合约部署的基本操作,文章最后讲了通过console来调用部...
- 背景 业务需求,产品希望通过后台接口上传视频后,能立即获取视频切片的地址。然后将地址插入到相关业务的表中。但是七牛...