支付宝小程序Serverless 阿里云能力API·Serverless 文件管理

2020-09-18 14:37 更新

步骤一:设置文件权限

小程序 Serverless 提供了一套简明易懂的 JSON 语法用来控制用户对资源的访问,类似于身份验证体系里的 IAM 或者网络安全中的 ACL。您可以通过修改权限规则来管理文件权限。

小程序 Serverless 会为每个新建的文件自动提供一个默认权限规则。默认规则规定所有文件都只有资源所有者可以进行写操作,所有人可读。您可以在控制台上修改文件权限。

  1. 打开小程序云控制台,在云存储页面,单击权限图标。

  1. 修改权限规则,然后单击保存。

云存储权限.jpg

上面的权限规则由多个子规则组成,每个子规则包含以下信息:

  • 范围:用于定义规则生效范围。在数据存储的安全规则中,每一个规则的范围是一个文件(路径)。您可以通过文件路径指定一个特定的文件, 也可以通过 JavaScript 的正则表达式指代一批文件或使用星号(*)指代所有文件。
  • 操作:用于定义生效范围内的特定操作。所有人都具有文件的读权限。.write 代表写操作,* 代表所有操作。
  • 策略:用于确定生效范围内的特定操作是否允许。默认没有标记为允许的操作,都是不允许的。策略是操作是否被允许的标记,可以是一个布尔值,或者是一个表达式。当策略冲突时,以最先出现的规则策略为准。如默认的权限规则策略表达式 request.auth.userId == resource.auth.userId 代表所有文件都只有资源所有者可以进行写操作,所有人可读。

步骤二:云存储操作

控制台操作

  1. 打开小程序云控制台,在云存储页面,单击上传文件。

  1. 单击直接上传或将文件拖拽至上传区域。

文件上传过程中,请勿刷新或关闭页面,否则上传任务会被中断且列表会被清空。

存储操作.jpg

  1. 上传成功后,您可以单击详情查看图片下载地址。

小程序端调用

  1. 在小程序项目的根目录执行以下命令安装 SDK。
    1. npm install @alicloud/mpserverless-sdk --save
  2. 文件上传或删除。
    1. // 选择文件上传
    2. my.chooseImage({
    3. chooseImage: 1,
    4. success: res => {
    5. const path = res.apFilePaths[0];
    6. const options = {
    7. filePath: path,
    8. headers: {
    9. contentDisposition: 'attachment',
    10. },
    11. };
    12. my.serverless.file.uploadFile(options).then(console.log).catch(console.error);
    13. },
    14. });
    15. // 删除之前上传的文件
    16. my.serverless.file.deleteFile('https://resource.bspapp.com/xxx-xx/4b82ded0-0118-4de4-9f50-ab13110a1ffb.jpg') .then(res => {
    17. console.log(res);
    18. }).catch(err => {
    19. console.error(err);
    20. });

    开发者技术支持群

加入支付宝小程序 Serverless 开发者群参与讨论,钉钉搜索群号:21922182,或使用钉钉扫描二维码加入。

image



支付宝扫描以下二维码登陆官方小程序【小程序云开发助手】,获取更多云开发教程以及在线体验云开发。

推广码.jpg

以上内容是否对您有帮助:
在线笔记
App下载
App下载

扫描二维码

下载编程狮App

公众号
微信公众号

编程狮公众号