nodejs图片上传如何取formData数据???
图片上传过程中需要在formData中添加其他数据,用于数据更新,代码如下
// 上传图片接口doUpload: function (e) { var that = this // 选择图片 console.log('ID:', e.target.id) wx.chooseImage({ count: 1, sizeType: ['compressed'], sourceType: ['album', 'camera'], success: function (res) { util.showBusy('正在上传') var filePath = res.tempFilePaths[0] // 上传图片 wx.uploadFile({ url: config.service.uploadUrl, filePath: filePath, name: 'file', data: { ID: e.target.id, name:'aaaaaaaaa' }, success: function (res) { util.showSuccess('上传图片成功') console.log('返回值:', res) that.setData({ List: res.data.data[0] }) }, fail: function (e) { util.showModel('上传图片失败') } }) }, fail: function (e) { console.error(e) } })}, |
server 端代码如下
const { uploader } = require('../qcloud')const { mysql } = require('../qcloud')module.exports = async ctx => { // 获取上传之后的结果 // 具体可以查看: console.log('##############################'); console.log(ctx.request.body); console.log('#############################'); const data = await uploader(ctx.req) //console.log(data); var imgUrl = data.imgUrl; //console.log(data.imgUrl); var ID = ctx.request.body.ID; //console.log(ID); var res = null; var sql = "update t_zone set f_img='" + imgUrl + "' where f_id=" + ID; await mysql.schema.raw(sql) res = await mysql.schema.raw("select * from t_zone where 1=1 ") ctx.state.data = res; //ctx.state.data = data} |
不知道怎么把ID和name值取出,请大家帮我看看。
