开始使用

文件存储服务支持文本、图片和其他由用户生成的内容存储到云端。作为开发者,您可以在客户端直接上传文件,也可以在云函数中直接上传和读取文件。

使用场景

客户端调用场景

在客户端,您可以通过 basement.file 对象调用文件存储的大量 API 方法。例如,将小程序客户端中选中的图片进行上传,获得图片 URL。

  1. // 选择并上传图片,获得图片 URL
  2. attach() {
  3. my.chooseImage({
  4. chooseImage: 1,
  5. success: res => {
  6. const path = res.apFilePaths[0];
  7. const options = {
  8. filePath: path,
  9. headers: {
  10. contentDisposition: 'attachment',
  11. },
  12. };
  13. basement.file.uploadFile(options).then((image) => {
  14. console.log(image);
  15. this.setData({
  16. imageUrl: image.fileUrl,
  17. });
  18. }).catch(console.log);
  19. },
  20. });
  21. },

API 的具体使用方法,参考 文件存储 API

云函数调用场景

在不安装 SDK 的情况下,云函数可以直接调用同一个云服务的文件存储服务。例如,将上述客户端中上传的图片删除掉,通过云函数调用:

  1. module.exports = async (ctx) => {
  2. // ctx.args 是从客户端传过来的参数
  3. const res = await ctx.basement.file.deleteFile({ fileUrl: ctx.args.fileUrl });
  4. return res;
  5. };

上述示例中,您可以通过 ctx.basement.file 获得文件存储服务的对象。更多内容,参考 文件存储 API

原文: https://docs.alipay.com/mini/cloud-service/cqlu09