检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
示例3:上传代码到OBS桶,并使用OBS链接创建函数 场景描述 本章节以Python 2.7为例,指导您在本地编码,然后将代码文件上传到OBS桶,实现通过OBS链接创建函数。 API的调用方法请参见如何调用API。 前提条件 已在OBS服务中创建OBS桶。 约束与限制 请确保函数与OBS桶创建在同一区域下。
分,并将请求方法写在一起。这是因为URI-scheme都是HTTPS,而Endpoint在同一个区域也相同,所以简洁起见将这两部分省略。 请求方法 HTTP请求方法(也称为操作或动词),它告诉服务你正在请求什么类型的操作。 GET:请求服务器返回指定资源。 PUT:请求服务器更新指定资源。
函数如何获取APIG触发器中的请求路径或请求参数? 请求路径或请求参数默认携带在event的入参中,FunctionGraph函数对APIG调用的传入值为函数自带的事件模板。您可以通过打印函数执行结果,获取请求路径或请求参数。 示例: queryStringParameters:GET请求中URL后
如何读取函数的请求头? 函数入口中的第一个参数里面包含请求头,您可以打印函数执行结果,从而获取想要的字段。 如下图,event为函数入口的第一个参数,headers为请求头。 父主题: 配置函数
展示代码,但您仍可以测试您的函数。 图1 编辑器不展示代码 更多函数资源的限制,请参见使用限制。 操作步骤 以使用对象存储服务OBS控制台为例,介绍如何获取存储在OBS桶中的函数代码包对象URL,并将代码包文件上传至FunctionGraph。 登录对象存储服务OBS控制台,创建
触发器名称:自定义。 桶:选择创建OBS桶中创建的“hugb-bucket-input”桶。 事件类型:选择“通过页面或Put请求创建或覆盖桶对象。”、“使用Post请求创建或覆盖桶对象。”。 图1 创建OBS应用事件源 单击“确定”,完成触发器创建。 OBS应用事件源创建以后,当有图片
-Port”且类型是“扩展弹性网卡”的私有IP地址。关于弹性网卡详情请参考弹性网卡。 图4 查看私有IP 配置白名单或安全组的入/出方向规则时,请确保配置的地址在用户VPC网段内,关于创建安全组详情请参考创建安全组。 请确保VPC函数完成执行“测试”,则会在“类型”列中显示“扩展弹性网卡”。
'T'HH:mm:ss,UTC时间)。如果不指定默认为当前时间 请求参数 表3 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 用户Token。 通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。
OBS事件 华为云函数可以由不同的event源触发。这些事件源可以通过event定义和配置。 OBS事件 此示例设置一个OBS事件,每当对象上传到my-service-resource时,该事件将触发first函数。 # serverless.yml functions: first:
如图1所示。 桶选择创建OBS桶中创建的“input_bucket”桶。 事件选择“通过页面或Put请求创建或覆盖桶对象”和“使用Post请求创建或覆盖桶对象”。 图1 创建OBS应用事件源 单击“确定”,完成触发器创建。 OBS应用事件源创建以后,当有文件上传或更新至dew-b
requests 否 String 需要查询的异步请求ID, 多个请求id使用','分隔, 最大支持10个请求id查询。如果不指定,默认查询所有异步调用记录 最小长度:0 最大长度:640 marker 否 String 本次查询起始位置,默认值0 缺省值:0 最小长度:0 最大长度:64
使用OBS触发器 本节介绍创建OBS触发器,上传图片压缩包至存储桶,产生事件触发函数运行,供用户了解OBS触发器的使用方法。OBS触发器创建以后,不能停用,只能删除。 关于OBS触发器事件源的具体介绍,请参见支持的事件源。 表1 OBS支持事件类型 事件 说明 ObjectCreated
是否支持在函数中启动TCP的监听端口,通过EIP接收外部发送过来的TCP请求? 目前函数暂不支持这种方式。函数的理念是无服务器计算,计算资源只会在运行期分配,这种自定义监听端口的场景并不适合。 父主题: 产品咨询
计费说明 对象存储服务 OBS 产品类型:对象储存 区域:华北-北京四 存储策略:单AZ存储 存储类别:标准存储 桶策略:私有 购买量:2 计费模式:本例使用按需计费。 具体计费项及说明请参考对象存储服务按需计费说明。 函数工作流 FunctionGraph 函数类型:事件函数 区域:华北-北京四
停止函数异步调用请求 功能介绍 当前仅支持参数recursive为false且force为true的函数。 在1:N的函数做并发异步调用的场景下调用停止异步请求接口时,同一函数实例同时在执行的其他请求也会被一并停止并返回4208 function invocation canceled
FunctionGraph支持两种函数类型,事件函数和HTTP函数。HTTP函数专注于优化 Web 服务场景,用户可以直接发送 HTTP 请求到 URL 触发函数执行,从而使用自己的Web服务。HTTP函数只允许创建APIG/APIC的触发器类型,其他触发器不支持。 HTTP函数支持HTTP/1
文件所在的OBS桶名,以及OBS地址的链接。 已配置具有OBS服务访问权限的委托,并记录委托名。 总体思路 创建FunctionGraph函数和Timer触发器,实现定时从OBS桶中下载文件,步骤如下: 创建函数:创建下载文件的函数。 修改函数的metadata信息:修改函数配置
选择需要的触发事件类型,有以下事件类型: 不指定对象版本号删除对象 指定对象版本号删除对象 选择该事件类型需要开启多版本控制功能,具体详情请参见多版本控制功能启用时的对象删除机制。 通过页面或Put请求创建或覆盖桶对象 通过页面或API请求合并分段任务 使用Copy请求创建或覆盖桶对象
创建函数及添加事件源之前,需要创建两个OBS桶,分别用来保存用户上传的文件和加/解密后输出的文件。 OBS桶创建以后,需要创建委托,给FunctionGraph函数赋权,确保FunctionGraph函数能够访问到OBS资源,本指导以加密文件为例: 创建OBS桶 上传文件的源桶、输出文件的目标桶和函数必须处于同一个区域下。
的功能。(当前“OBS应用事件源”仅支持华北-北京四、华北-乌兰察布一、华东-上海一。) 场景介绍 将图片上传到特定的OBS桶中。 将用户上传的每个图片打水印。 将处理完后的图像上传到另一个指定的OBS桶中。 本教程必须使用两个不同的OBS桶。 保证函数和OBS桶在一个区域(区域都选择默认即可)。