检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
在左侧区域将展示“上传软件包到软件发布库”。 在左侧区域单击“上传软件包到软件发布库”,进行相关配置。 图1 配置参数 步骤显示名称:上传deploy.py到发布库 构建包路径:deploy/deploy.py 发布版本号:${releaseVersion} 在“参数设置”中配置
将工程打成ZIP包,上传到OBS存储桶。 C# 不支持该方式 必须在编译之后打zip包,必须包含“工程名.deps.json”,“工程名.dll”,“工程名.runtimeconfig.json”,“工程名.pdb”和“HC.Serverless.Function.Common.dll”文件。
"latest-200731100126@obffv", "description": "使用API网关调用函数,在函数中演示了返回不同的内容,如HTML页面和json结构体。", "last_modified": "2020-07-31T10:01:26+08:00", "func_code": {}
目标类型。 OBS:通知到OBS服务。 SMN:通知到SMN服务。 DIS:通知到DIS服务。 FunctionGraph: 通知到函数服务。 枚举值: OBS SMN DIS FunctionGraph param String 通知目标服务对应参数,json字符串。 OBS:包含
目标类型。 OBS:通知到OBS服务。 SMN:通知到SMN服务。 DIS:通知到DIS服务。 FunctionGraph: 通知到函数服务。 枚举值: OBS SMN DIS FunctionGraph param String 通知目标服务对应参数,json字符串。 OBS:包含
environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment ak := os.Getenv("CLOUD_SDK_AK") sk := os.Getenv("CLOUD_SDK_SK")
SDK下载提供的SDK地址,下载JavaRuntime SDK到本地开发环境解压,如图2所示。 图2 下载SDK解压 配置依赖 在工程目录下创建lib目录,将zip中的Runtime2.0.5.jar和代码所需要的三方依赖包拷贝到该目录,并把该jar添加为工程依赖。如图3所示: 图3 配置依赖
权信息等。 如下公共消息头需要添加到请求中。 Content-Type:消息体的类型(格式),必选,默认取值为“application/json”,有其他取值时会在具体接口中专门说明。 X-Auth-Token:用户Token,可选,当使用Token方式认证时,必须填充该字段。用
打包 打包CLI命令 使用Serverless CLI工具,可以将项目打包,而无需将其部署到华为云。这最好与CI/CD工作流一起使用,以确保可部署产物一致。 运行以下命令将在服务的.serverless目录中构建和保存所有部署产物: serverless package 打包配置
test.com解析到apig地址的ipv4规则,可参考网站解析至IP地址。 图3 配置ipv4规则 最后在函数服务配置该域名的解析配置(可参考FunctionGraph如何实现域名解析?),这样就能在函数中通过域名(www.test.com)访问专享版APIG中注册的接口了。 父主题:
具有配置简单、可读性强等特点,并且兼容JSON语法。详情参见官网介绍https://developer.hashicorp.com/terraform/language,此文不做赘述。 编写函数资源脚本 华为云在Terraform已经注册了provider,函数作为资源挂在华为
exit 删除项目目录中的“node_modules”子目录(如果您使用的是Linux操作系统,可以将项目中的package.json文件复制到windows系统的任意目录中,后续操作一致)。 图1 删除node_modules 在项目目录中执行依赖安装命令。 npm install
针对该问题有以下两种处理方案: 代码逻辑较为复杂的情况下建议使用自定义镜像函数,创建自定义镜像函数详情请参见使用容器镜像创建函数。 制作依赖包时,把动态链接库一同复制到依赖包最外层。 如图2是chrome内核所需的动态链接库。 图2 chrome内核动态链接库 系统默认动态链接库路径:“/lib64:/usr/lib64”。
environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment ak := os.Getenv("CLOUD_SDK_AK") sk := os.Getenv("CLOUD_SDK_SK")
执行shell命令 上传函数压缩包到OBS 图2 上传函数压缩包到OBS 步骤显示名称:上传函数压缩包到OBS 构建产物路径:输入helloworld/code/helloworld.zip 桶名:选择一个私有桶存储函数代码zip包 OBS存储目录:function 上传部署包到软件发布库 图3 上传部署包到软件发布库
FunctionGraph函数通过域名访问APIG中注册的接口时,报域名无法解析? 函数服务目前只能解析pod域的域名或者在华为dns服务购买的域名。 父主题: 配置函数
如下代码: # -*- coding:utf-8 -*- import json def handler (event, context): output = 'Hello message: ' + json.dumps(event,ensure_ascii=False) return
事件源是事件的来源,函数流仅支持自定义的应用作为事件源,通过自定义的事件通道发布事件到事件网格。 详情请参见事件源概述。 事件内容格式 参数“事件负载内容”的内容格式。(目前只支持application/json格式。) 事件负载内容 事件内容。 事件发生主题 事件发生的主题或对象,用以标识哪个具体对象发生了当前事件
路径。但是该目录只可以读,不可以写入。 如果您希望在代码运行期间写入一些数据到实例里,打印日志到本地,或者您使用的依赖默认写入jar所在的目录,请对/tmp目录进行写入操作。 我的日志如何被收集,应该怎么输出日志? 函数实例在一段时间内没有请求会被销毁,写入到本地日志会同时被销毁,当前用户也无法在函数运行中
headers = new HashMap<>(); headers.put("Content-Type", "application/json"); return new APIGTriggerResponse(200, headers, event.toString());