微信小程序调用阿里云oss 代码

以下是一个微信小程序调用阿里云OSS的示例代码:

// 在小程序中引入ali-oss-sdk
const OSS = require('ali-oss');

// 配置阿里云OSS参数
const client = new OSS({
  region: 'your_oss_region', // OSS地区代码
  accessKeyId: 'your_access_key_id', // AccessKeyId
  accessKeySecret: 'your_access_key_secret', // AccessKeySecret
  bucket: 'your_bucket_name' // 存储桶名称
});

// 上传文件到OSS
wx.chooseImage({
  success: function(res) {
    const filePath = res.tempFilePaths[0]; // 获取选择的文件路径
    const fileName = 'test.jpg'; // 指定上传的文件名

    // 调用OSS上传
    client.put(fileName, filePath).then(function(res) {
      console.log(res);
      // 上传成功
      wx.showToast({
        title: '文件上传成功',
        icon: 'success',
      });
    }).catch(function(err) {
      console.log(err);
      // 上传失败
      wx.showToast({
        title: '文件上传失败',
        icon: 'none',
      });
    });
  },
  fail: function(err) {
    console.log(err);
    // 选择文件失败
    wx.showToast({
      title: '选择文件失败',
      icon: 'none',
    });
  }
});

// 下载文件
const fileName = 'test.jpg'; // 需要下载的文件名
const saveFilePath = wx.env.USER_DATA_PATH + '/' + fileName; // 文件保存路径

// 调用OSS下载
client.getStream(fileName).then(function(stream) {
  const fileStream = wx.createWriteStream(saveFilePath); // 创建写入流
  stream.pipe(fileStream); // 将OSS流写入本地文件

  fileStream.on('finish', function() {
    console.log('文件下载成功');
    // 下载成功
    wx.showToast({
      title: '文件下载成功',
      icon: 'success',
    });
  });

  fileStream.on('error', function(err) {
    console.log(err);
    // 下载失败
    wx.showToast({
      title: '文件下载失败',
      icon: 'none',
    });
  });
}).catch(function(err) {
  console.log(err);
  // 下载失败
  wx.showToast({
    title: '文件下载失败',
    icon: 'none',
  });
});

注意替换 your_oss_regionyour_access_key_idyour_access_key_secret 和 your_bucket_name 为你的阿里云OSS参数。

猜你喜欢

转载自blog.csdn.net/qq_32134891/article/details/131414051