小程序 拍照或相册选取图片 上传到服务器

html:
< button bindtap = 'uploadPhoto' > 拍照选取照片上传 button >

js:

Page({

  // 拍摄或从相册选取上传
uploadPhoto(e) {
var that = this;
wx.chooseImage({
count: 1, // 默认9
sizeType: [ 'compressed'], // 可以指定是原图还是压缩图,默认二者都有
sourceType: [ 'album', 'camera'], // 可以指定来源是相册还是相机,默认二者都有
success: function (res) {
// 返回选定照片的本地文件路径列表,tempFilePath可以作为img标签的src属性显示图片
var tempFilePaths = res.tempFilePaths;
   console.log('本地图片的路径:', tempFilePaths )
upload(that, tempFilePaths)
}
})
},

})

// 上传图片
function upload(page, path) {
wx.showToast({
icon: "loading",
title: "正在上传"
}),
wx.uploadFile({
  url: '图片服务器的路径',
filePath: path[ 0],
name: 'file',
header: { "Content-Type": "multipart/form-data" },
formData: {
//和服务器约定的token, 一般也可以放在header中
'session_token': wx.getStorageSync( 'session_token')
},
success: function (res) {
         //上传成功返回数据
console.log( '上传成功返回的数据', JSON.parse(res.data).data);
if (res.statusCode != 200) {
wx.showModal({
title: '提示',
content: '上传失败',
showCancel: false
})
return;
}
},
fail: function (e) {
console.log(e);
wx.showModal({
title: '提示',
content: '上传失败',
showCancel: false
})
},
complete: function () {
wx.hideToast(); //隐藏Toast
}
})
}

你可能感兴趣的:(小程序)