uniAPP不支持oss怎么办

1. uniAPP不支持OSS介绍

uniAPP是一款跨平台的开发框架,它使得开发者可以通过一份代码,同时开发 Android、iOS 应用,甚至 H5。然而,uniAPP并不支持阿里云OSS,这让很多使用OSS的开发者不得不寻找其他的解决方案。

2. 解决方案

2.1 通过API调用

uniAPP虽然不支持直接使用OSS,但它可以通过API调用方式来实现文件存储上传下载功能。这种方法需要开发者在后台创建API服务接口,然后通过uniAPP的request API来调用服务接口。这个方法看似可行,但是实际上比较繁琐,而且需要开发者提前进行大量的服务器开发。

// 通过 API 调用上传文件

uni.request({

url: 'https://example.com/upload',

method: 'POST',

filePath: 'temp-file.jpg',

success: function(res) {

console.log(res.data);

}

});

2.2 使用第三方库

除了通过API调用方式外,uniAPP也提供了一些第三方库来实现OSS的功能。比较好的第三方库有uni-oss和uni-ali-oss。这些库一般是基于API调用方式实现,但是提供了成熟的封装和文档,可以大大减少开发者的工作量。

// 使用 uni-ali-oss 库上传文件

import AliOss from 'uni-ali-oss';

const client = new AliOss({

region: 'oss-cn-hangzhou',

accessKeyId: 'your-accesskeyid',

accessKeySecret: 'your-accesskeysecret',

bucket: 'your-bucket'

});

client.uploadFile({

filePath: '/path/to/local/file.jpg',

key: 'remote-filename.jpg'

}).then(res => {

console.log(res);

});

3. 总结

虽然uniAPP不支持直接使用OSS,但借助API调用和第三方库的方式,开发者仍然可以实现OSS的文件上传下载功能。根据项目需求和开发者自身技能水平,选择合适的方式来实现OSS的功能是非常重要的。