前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >SCF函数同个COS目录前缀后缀实现ZIP自动解压缩功能

SCF函数同个COS目录前缀后缀实现ZIP自动解压缩功能

原创
作者头像
╰ゑ迷羊ぉ
修改2020-03-12 10:15:30
1.1K0
修改2020-03-12 10:15:30
举报
文章被收录于专栏:云函数SCF云函数SCF

SCF函数同个COS目录前缀后缀实现ZIP自动解压缩功能

一、SCF配置创建角色运行:

Ps:

1、因本段代码运行时需调用COSAPI接口,为避免秘钥对写死到代码里,因此采取运用角色来承载临时密钥方法(SCF函数运行时会自动切获取临时秘钥)

2、QcloudAccessForCOSBatchRole载体:腾讯云对象存储批量处理服务(COSBatchOperations)操作权限包括但不限于以下权限:增删查改对象存储(COS)对象、对象ACL、对象数据元数据信息等。

  1. 角色创建:

登录控制台-》访问管理-》角色-》新建角色-》选择角色载体-》选择腾讯云产品服务-》QcloudAccessForCOSBatchRole载体勾选后下一步确认,具体步骤如下截图:

二、创建SCF函数及配置

1)登录云函数控制台,并选择和COS同地域,新建函数https://console.cloud.tencent.com/scf/list?rid=4&ns=default

1)自定义命名函数名,选择Nodejs8.9环境,搜索zip,选择模板函数“zip格式文件解压”然后点击下一步:

2)配置步骤如下:

函数名:随意值

运行环境:Nodejs8.9

创建方式:模板函数

模版搜索:zip格式文件解压

选择:zip格式文件解压

3)添加函数配置

运行角色:可以选择任意有权限操作源&&目标存储桶的角色,例如“SCF_QcsRole”

高级配置-环境变量:

注:后续想要修改前缀路径,可以直接修改环境变量就行

targetBucket:目标存储桶(解压后,解压出来的文件存放的Bucket)

targetRegion:目标存储桶的地域

targetPrefix:目标存储桶存放的前缀,例如target/

4)点击完成

5)在“函数配置”项,点击“编辑”

内存:896MB

超时时间:900

SCF权限配置:

注:

1) 针对角色更细粒度的权限控制,如只针对某个COS Bucket进行配置,可以到访问管理选中角色,基于策略模板自定义配置。

2) 网络配置建议开启:通过SCF云函数配置VPC,可确保函数和COS间的通信走内网方式。

6)在“触发方式”项,创建触发器

触发方式:COS触发

COSBucket:sourceBucket,选择你的源Bucket(该Bucket下上传的zip文件会触发解压函数)

事件类型:和创建相关的事件,例如:全部创建,Put方法创建,Post方法创建,Copy方法创建,CompleteMultipartUpload方法创建等

前缀过滤:sourcePrefix,zip文件存放的目录,例如source/

后缀过滤:必须为.zip

注:触发器配置成功后,需等待10s左右,再到COS控制台上进行测试验证,另外还可以到SCF函数控制台查看运行日志。

7)在“运行日志”项,查看函数日志信息

8)在你指定的sourceBucket的sourcePrefix下上传zip包,然后查看targetBucket的targetPrefix下是否出现解压的文件

验证测试是成功的,如下截图:

每一个上传的压缩包要保证文件名不一样,否则解压后可能覆盖写,如下情形:zip/1/1.zip

SCF运行监控日志,显示调用成功:

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • SCF函数同个COS目录前缀后缀实现ZIP自动解压缩功能
    • 一、SCF配置创建角色运行:
      • 1、因本段代码运行时需调用COSAPI接口,为避免秘钥对写死到代码里,因此采取运用角色来承载临时密钥方法(SCF函数运行时会自动切获取临时秘钥)
      • 2、QcloudAccessForCOSBatchRole载体:腾讯云对象存储批量处理服务(COSBatchOperations)操作权限包括但不限于以下权限:增删查改对象存储(COS)对象、对象ACL、对象数据元数据信息等。
    • 二、创建SCF函数及配置
      • 注:
      • 1) 针对角色更细粒度的权限控制,如只针对某个COS Bucket进行配置,可以到访问管理选中角色,基于策略模板自定义配置。
      • 2) 网络配置建议开启:通过SCF云函数配置VPC,可确保函数和COS间的通信走内网方式。
相关产品与服务
对象存储
对象存储(Cloud Object Storage,COS)是由腾讯云推出的无目录层次结构、无数据格式限制,可容纳海量数据且支持 HTTP/HTTPS 协议访问的分布式存储服务。腾讯云 COS 的存储桶空间无容量上限,无需分区管理,适用于 CDN 数据分发、数据万象处理或大数据计算与分析的数据湖等多种场景。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档