UNPKG

patient-ui

Version:

patient UI,是uni-app生态优秀的UI框架,全面的组件和便捷的工具会让您信手拈来,如鱼得水

69 lines (62 loc) 1.98 kB
const config = require('./Configuration.js'); const getPolicyEncode = require('./getPolicy.js'); const getSignature = require('./GetSignature.js'); const OBSupload = function (filePath){ if(!filePath){ wx.showToast({ title: '文件路径不能为空', icon: '请重新选择路径', }); } else{ const openId = uni.getStorageSync('userInfo').openId const time = new Date().getTime() const fileName = `patient/${time}`+`${openId}.jpg`; //指定上传到OBS桶中的对象名 const OBSPolicy = { //设定policy内容 "expiration": "2030-12-31T12:00:00.000Z", "conditions": [ {"bucket": "hes"}, //Bucket name {'key': fileName} ] } wx.setStorageSync('fileName',fileName) const policyEncoded = getPolicyEncode(OBSPolicy); //计算policy编码值 const signature = getSignature(policyEncoded, config.SecretKey); //计算signature wx.uploadFile({ url: config.EndPoint, filePath: filePath, name: 'file', header: { 'content-type': 'multipart/form-data; boundary=-9431149156168', }, formData: { 'AccessKeyID': config.AccessKeyId, 'policy': policyEncoded, 'signature': signature, 'key': fileName, }, success: function(res){ console.log(res); //打印响应状态码 const statusCode = res.statusCode.toString() if(statusCode.startsWith('2')){ wx.showToast({ title: '上传成功', icon: '成功' }); } else{ console.log('上传图片失败', res) wx.showToast({ title: '上传失败', icon: '失败' }); return false } }, fail: function(e){ console.log(e); } }) } } module.exports = OBSupload;