参考文章https://www.jianshu.com/p/34d6dcbdc2e5
需要用到的js文件点击下载
踩的坑
一、config.js
这一段可以把 config 对象写在UploadAliyun.js,或者直接把缓存的AccessKeySecret和OSSAccessKeyId在UploadAliyun.js中获取,这里踩的坑
config.js页面里wx.getStorageSync(‘upload’) 获取的值为上一次缓存的值,导致一直提示keyid不正确(哭哭)
var fileHost= wx.getStorageSync('upload').bucket + '.' + wx.getStorageSync('upload').endpoint //(你的阿里云oss地址)
const config = {
//aliyun OSS config
uploadImageUrl: `${
fileHost}`, //默认存在根目录,可根据需求改
AccessKeySecret:wx.getStorageSync('upload').AccessKeySecret,
OSSAccessKeyId: wx.getStorageSync('upload').AccessKeyId,
timeout: 87600 //这个是上传文件时Policy的失效时间
};
module.exports = {
config: config
}
二、
稍作修改
success_action_status:‘201’
好多人写的都是200导致uploadFile返回的 res.data 为空
改为201 data返回数据 需解析
一定要检查 OSSAccessKeyId和SecurityToken对不对
const env = require('./config.js'); //配置文件,在这里配置你的OSS keyId和KeySecret,timeout:87600;
//更好的做法是把这些信息放到服务器进行签名,防止信息泄露
const Base64 = require('./Base64.js');//Base64,hmac,sha1,crypto相关算法
//参考这里https://github.com/peterhuang007/weixinFileToaliyun.git