router.post("/uploadImg", upload.single('file'), (req, res) => { if (req.file.path) { let token1 = req.body.token; let user = ""; client.get(token1, function (err, v) { if (token1 == v) { const userInfo = vartoken.verToken(token1); userInfo.then((result) => { user = result }).catch((err) => { if (err.message == "jwt expired") { res.send({'code': 300000, 'message': 'token失效了'}); } if (err.message == "invalid token") { res.send({'code': 100001, 'message': '无效的token'}); } }) } else { res.send({'code': 200000, 'message': '您还未登录'}); } }) // 文件路径 const filePath = './' + req.file.path; // 文件类型 const temp = req.file.originalname.split('.'); const fileType = temp[temp.length - 1]; const lastName = '.' + fileType; // 构建图片名 const fileName = new Date().getTime() + lastName; // 图片重命名 fs.rename(filePath, fileName, (err) => { if (err) { throw err // res.end(JSON.stringify({status:'102',msg:'文件写入失败'})); } else { let localFile = './' + fileName; let key = fileName; // 腾讯云 文件上传 let params = { Bucket: tengxun.Bucket, /* 必须 */ Region: tengxun.Region, /* 必须 */ Key: key, /* 必须 */ FilePath: localFile, /* 必须 */ } cos.sliceUploadFile(params, function (err, data) { if (err) { fs.unlinkSync(localFile); res.send({code: '100001', message: '上传失败', error: JSON.stringify(err)}); } else { fs.unlinkSync(localFile); let imageSrc = 'https://' + tengxun.Bucket + '.cos.' + tengxun.Region + '.myqcloud.com/' + data.Key; const sqlStr = `UPDATE \`user\` SET hdImg = "${imageSrc}" WHERE userId = "${user.userId}"` connection.query(sqlStr, (error, suc) => { if (error) throw error res.send({code: '100000', message: '上传成功'}); }) } }); } }) } })
node。js上传图片到腾讯云cos上
猜你喜欢
转载自blog.csdn.net/weixin_43900193/article/details/107559234
今日推荐
周排行