检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
创建Next.js项目 本案例以Next.js框架的默认demo为例演示部署过程,需要在Linux环境中创建一个全新的Next.js项目,本案例采用本地运行Docker node:18.15.0镜像的方式,同样适用于其他Linux系统。关于Docker镜像和Linux操作系统的使用并非本案例主要内容,不做过多赘述。
Node.js 开发事件函数 开发HTTP函数 nodejs模板 制作依赖包
[函数名]”。例如创建函数时设置为index.handler,那么FunctionGraph会去加载index.js中定义的handler函数。 Node.js 8.10、Node.js 10.16、Node.js 12.13、Node.js14.18、Node.js16.17、Node.js18.15函数定义
kage.json、package-lock.json文件。 npm init -y npm i koa 创建index.js文件,在index.js文件中引入koa框架,koa框架的使用参考koa指南。 代码示例: const Koa = require("koa"); const
Serverless是一个Node.js CLI工具,因此您需要先在计算机上安装Node.js。 请访问Node.js官方网站,下载并按照安装说明在本地计算机上安装Node.js。 您可以通过在终端中运行node --version来验证Node.js是否安装成功,即可以看到打印出来的对应Node.js版本号。
Node.js语言 √表示支持,×表示不支持 语言版本 是否支持 开发指导 Node.js 6.10 √ 接口定义、有关SDK接口说明和函数开发指导请参见Node.js函数开发指南。 Node.js 8.10 √ Node.js 10.16 √ Node.js 12.13 √ Node
处理结果 在Nextjs-app函数详情页面,选择“设置 > 触发器”,复制APIG触发器的调用URL。 图1 复制APIG触发器URL 在浏览器中打开URL,即可看到如图2页面。 图2 返回结果 父主题: 通过FunctionGraph部署Next.js项目
开始使用本案例前请在本地安装好18.15.0版本的Node.js运行环境。 当前华为云函数工作流服务支持的Node.js运行时最高版本为18.15.0、Next.js支持最高版本为13.5.6,本案例将以Next.js版本为13.5.6举例介绍。 资源规划 表1 资源规划详情 产品
制作依赖包 制作函数依赖包推荐在Huawei Cloud EulerOS 2.0环境中进行。使用其他系统打包可能会因为底层依赖库的原因,运行出问题,比如找不到动态链接库。 如果安装的依赖模块需要添加依赖库,请将依赖库归档到zip依赖包文件中,例如,添加.dll、.so、.a等依赖库。
依赖包名称:选择之前创建的依赖包“nextjs13.5.6”。 版本:默认选择“1”。 配置完成后,单击“确定”。 配置APIG触发器 在Nextjs-app函数详情页面,选择“设置 > 触发器”,单击“创建触发器”。 图2 创建触发器 触发器类型可以选择“API 网关服务(APIG)”或“API 网关服务(APIG
require("@huaweicloud/huaweicloud-sdk-functiongraph"); // 该示例仅为测试使用,在生产环境中请勿硬编码ak sk 信息在代码中 const ak = "<YOUR AK>"; const sk = "<YOUR SK>"; const endpoint
通过FunctionGraph部署Next.js项目 方案概述 创建Next.js项目 创建依赖包 构建程序 处理结果
FunctionGraph函数支持哪些中文字体? FunctionGraph函数支持以下四种中文字体: NotoSansTC-Regular.otf NotoSerifTC-Regular.otf NotoSansSC-Regular.otf NotoSerifSC-Regular.otf 以上中文字体,用户可直接引用。
连接导致的依赖缺失错误,因此需要删除现有“node_modules”子目录。 在Windows系统中重新安装,操作步骤如下: 退出Docker容器(原生Linux系统忽略)。 exit 删除项目目录中的“node_modules”子目录(如果您使用的是Linux操作系统,可以将项目中的package
'body': JSON.stringify(event), } return output; } 父主题: Node.js
在函数中引入动态链接库 函数运行环境中已经默认将代码根目录和根目录下的lib目录加入到LD_LIBRARY_PATH中,只需要将动态链接库放到此处即可。 在代码中直接修改LD_LIBRARY_PATH环境变量。 如果依赖的.so文件放在其他目录,可以在配置页面设置LD_LIBRA
能否在函数环境变量中存储敏感信息? 定义环境变量时,系统会明文展示所有输入信息,请不要输入敏感信息(如账户密码等),以防止信息泄露。 父主题: 函数配置
npm install 设置凭证,详情请参考凭证设置。 更新serverless.yml。 更新项目serverless.yml中的region和credentials。 部署。 使用如下命令的场景为首次部署服务,以及在更改serverless.yml中的函数、事件或资源之后,希
怎样获取在函数运行过程中实际使用了多少内存? 函数调用的返回信息中会包含最大内存消耗等信息,请参考开发指南中的SDK接口。也可以在执行结果界面查看。 父主题: 函数执行
编写业务函数代码并设置运行的条件,无需配置和管理服务器等基础设施,函数以弹性、免运维、高可靠的方式运行。此外,按函数实际执行资源计费,不执行不产生费用。 函数使用流程如图1所示。 图1 函数使用流程 功能简介 ①编写代码 用户编写业务代码,目前支持Node.js、Python、J