关于harmonyos:HarmonyOS开发云工程与开发云函数

42次阅读

共计 5703 个字符,预计需要花费 15 分钟才能阅读完成。

创立函数

您可间接在 DevEco Studio 创立函数、编写函数业务代码、为函数配置调用触发器。

1. 右击“cloudfunctions”目录,抉择“New > Cloud Function”。

2. 输出函数名称后,点击“OK”。

函数名称仅反对小写英文字母、数字、中划线(-),首字符必须为小写字母,结尾不能为中划线(-)。

“cloudfunctions”目录下生成新建的函数目录。

3. 配置函数。

  • node_modules:主动为该函数引入的依赖包。
  • function-config.json:函数的配置文件,可配置触发器,通过触发器裸露的触发条件来实现函数调用。

在“triggers”下配置触发器,云函数目前反对以下 5 种触发器。

NOTICE
如您需在函数部署实现后更新触发器,请先删除之前的触发器配置,再增加新的触发器配置,否则您的更新将不失效。

  • HTTP 触发器

function-config.json 文件中已为您主动实现 HTTP 触发器配置。函数部署到云端后会主动生成触发 URL,在您向该 URL 发动 HTTP 申请时触发函数。对于如何应用 HTTP 触发器调用函数,请参见通过 HTTP 触发器调用函数。

{
  "type": "http",
  "properties": {
    "enableUrlDecode": true,
    "authFlag": "true",
    "authAlgor": "HDA-SYSTEM",
    "authType": "apigw-client"
  }
}
  • type:触发器类型,配置为“http”。
  • properties:触发器属性,属性参数如下表所示。
  • CLOUDDB 触发器

为函数配置 CLOUDDB 触发器后,当云数据库产生插入或者更新数据、删除数据、清空数据等变更操作时将触发云函数。对于如何应用 CLOUDDB 触发器调用函数,请参见云数据库调用函数。

{
  "type": "clouddb",
  "properties": {
    "eventSourceId": "9***-test-user",
    "eventType": "onUpsert",
    "enabled": "true"
  }
}
  • type:触发器类型,配置为“clouddb”。
  • properties:触发器属性,属性参数如下表所示。

AUTH 触发器

您能够为函数配置 AUTH 触发器来接管用户的注册、登录等要害事件。例如,若增加了“用户注册”事件类型的 AUTH 触发器,当认证服务检测到用户注册事件产生时将触发函数。对于如何应用 AUTH 触发器调用函数,请参见认证服务调用函数。

{
  "type": "auth",
  "properties": {"eventType": 0}
}
  • type:触发器类型,配置为“auth”。
  • properties:触发器属性,属性参数如下表所示。
  • CLOUDSTORAGE 触发器

为函数配置 CLOUDSTORAGE 触发器后,当 AGC 云存储服务中产生文件或者文件夹上传或删除操作时,将触发函数并执行您想要实现的性能。对于如何应用 CLOUDSTORAGE 触发器调用函数,请参见云存储调用函数。

{
  "type": "cloud_storage",
  "properties": {
    "bucketName": "harmony-0xnwg",
    "eventName": "storage.upload.completed"
  }
}
  • type:触发器类型,配置为“cloud_storage”。
  • properties:触发器属性,属性参数如下表所示。
  • helloworld.ts:函数入口文件(此处以“helloworld.ts”为例,请以理论名称为准)。请参考开发函数编写函数代码。
  • package.json:蕴含了以后函数的名称、版本等函数元数据。package.json 内主动引入了云数据库的最新版本 Node.js
    Server SDK,您也能够在“dependencies”下增加其余须要的依赖。
  • package-lock.json:保留了 node_modules 中所有包的信息,如版本、下载地址等。

调试函数

函数开发过程中,您可在本地进行调试。或者您也能够将函数部署到 AGC 云端后,在本地触发调用云端函数。

目前本地调试反对 Run 和 Debug 两种模式。Debug 模式反对应用断点来追踪函数的运行状况,Run 模式则不反对。

NOTICE
在通用云开发模板工程与商城模板工程下调试函数的流程基本一致,但商城模板工程目前存在一些非凡限度,因而如需调试商城模板工程函数,请间接参考调试商城模板工程函数操作。

Run 模式启动调试

1. 右击“cloudfunctions”目录,抉择“Run Cloud Functions”。

NOTE
间接从以后门路下 Run,应用的是默认的 Run 配置,您也可自定义 Run 配置。自定义 Run 配置后再从此门路下 Run,将优先采纳自定义 Run 配置。

2. 查看“Run”面板。如果呈现“Cloud Functions loaded successfully”,示意所有函数已胜利加载到本地运行的 HTTP Server 中,并生成对应的 POST URL。

3. 在菜单栏抉择“Tools > CloudDev > Cloud Functions Requestor”,应用 Cloud Functions Requestor 触发函数调用。

4. 在弹出的“Cloud Functions Requestor”面板,填写触发事件参数。

  • Environment:抉择函数调用环境,Local 示意本地调用,Remote 示意近程调用。

NOTICE
近程调用需先将函数部署到 AGC 云端。

  • Cloud Function:抉择须要触发的云函数。
  • Event:输出事件参数,内容为 JSON 格局申请体数据。

5.(可选)点击“Save”,可保留以后触发事件。

点击右上角可开展保留的触发事件,后续可间接点击“Load”加载事件。对于不须要保留的触发事件,也能够点击“Delete”删除。

6. 点击“Trigger”,将会触发执行用户函数代码。执行后果将展现在“Result”框内,Run 面板同时打印运行日志。

7.(可选)如配置了环境变量(如下图中“env1”),可将变量配置信息传入到函数执行环境中,用于函数运行时读取。

8. 点击 Run 面板左侧,可进行运行。

9. 依据运行后果批改函数代码后,点击从新以 Run 模式启动调试,直至没有问题。

10. 参考步骤 4~9,实现其余函数的调试。

Debug 模式启动调试

右击“cloudfunctions”目录,抉择“Debug Cloud Functions”。

NOTE
间接从以后门路下 Debug,应用的是默认的 Debug 配置,您也可自定义 Debug 配置。自定义 Debug 配置后再从此门路下 Debug,将优先采纳自定义 Debug 配置。

2. 查看 Console 面板。如果呈现“Cloud Functions loaded successfully”,示意函数胜利加载到本地运行的 HTTP Server 中,并生成对应的 POST URL。

3. 如需设置断点调试,在函数代码中选定要设置断点的无效代码行,在行号(如下图行 14)后单击鼠标左键设置断点(如下图的红点)。

设置断点后,调试可能在断点处中断,并高亮显示该行。

4. 在菜单栏抉择“Tools > CloudDev > Cloud Functions Requestor”,应用 Cloud Functions Requestor 触发函数调用。

5. 在弹出的“Cloud Functions Requestor”面板,填写触发事件参数。

  • Environment:抉择函数调用环境,Local 示意本地调用,Remote 示意近程调用。

NOTICE
近程调用需先将函数部署到 AGC 云端。

  • Cloud Function:抉择须要触发的云函数。
  • Event:输出事件参数,内容为 JSON 格局申请体数据。

6.(可选)点击“Save”,可保留以后触发事件。

点击右上角可开展保留的触发事件,后续可间接点击“Load”加载事件。对于不须要保留的触发事件,也能够点击“Delete”删除。

7. 点击“Trigger”,将会触发执行用户函数代码。执行后果将展现在“Result”框内,Debugger 面板同时打印调试日志。

8.(可选)如配置了环境变量(如下图中“env1”),可将变量配置信息传入到函数执行环境中,用于函数运行时读取。

9. 点击,可进行调试。

10. 依据调试后果批改函数代码后,点击从新以 Debug 模式启动调试,直至没有问题。

11. 参考步骤 5~10,实现其余函数的调试。

自定义 Run/Debug 配置

按以上两种办法间接启动调试采纳的是默认的 Run/Debug 配置。如有非凡需要,您也可应用自定义 Run/Debug 配置项来进行调试。

1. 在菜单栏抉择“Run > Edit Configurations”。

2. 在“Run/Debug Configurations”窗口,点击,抉择“Cloud Functions”,新增一个 Run/Debug 配置。

3. 自定义 Run/Debug 配置,实现后点击“OK”。

  • Name:Run/Debug 配置的名称,如“functions-custom1”。
  • Server Port:HTTP 服务端监听端口。默认为“18090”,自定义端口号倡议大于 1024。勾选“Auto
    increment”示意如以后端口被占用则端口号主动加“1”。
  • Environment variables:函数运行的环境变量,为 key-value 模式。

点击“Edit environment variables”按钮,在“Environment Variables”弹窗中点击“+”增加一个环境变量,而后点击“OK”。增加胜利后,您便能够将变量配置信息传入到函数执行环境中,用于函数运行时读取。

4. 抉择刚刚自定义的 Run/Debug 配置,别离点击或进行 Run 或 Debug。后续调试步骤与默认配置下的调试步骤统一,请别离参见 Run 模式启动调试或 Debug 模式启动调试。

调试商城模板工程函数

商城模板中有局部代码逻辑实现了云函数调用云数据库,因而须要您先部署云工程,云端才会有相干数据及环境变量。同时,云函数为拜访云数据库应用了“PROJECT_CREDENTIAL”环境变量,部署函数到 AGC 云端时,云端会主动配置好“PROJECT_CREDENTIAL”以运行环境变量。但在本地调试函数时,须要您手动将“PROJECT_CREDENTIAL”环境变量增加到 Run/Debug 配置中。否则,函数调试代码执行会因获取不到“PROJECT_CREDENTIAL”环境变量而中断。

本章节将介绍如何在本地调试商城模板工程函数,重点详述商城模板函数调试的一些非凡配置。

1. 将整个云工程部署到 AGC 云端。

2. 进入 AGC 控制台,抉择您的我的项目,进入“Serverless > 云函数”菜单,在函数列表点击刚刚部署的任意函数(如下图“mall-commodity”)。

3. 在函数概览页面,抉择“配置 > 环境变量”页签,获取 AGC 为您主动配置好的环境变量“PROJECT_CREDENTIAL”的 key 和 value 值。

4. 参考自定义 Run/Debug 配置新增函数调试配置,将步骤 3 获取的“PROJECT_CREDENTIAL”环境变量增加到调试配置中。您也能够增加您须要的其余环境变量。

5. 抉择刚刚自定义的 Run/Debug 配置,别离点击或进行 Run 或 Debug,调试步骤请别离参见 Run 模式启动调试或 Debug 模式启动调试。

部署函数

实现函数代码开发后,您可将函数部署到 AGC 控制台,反对单个部署和批量部署。

部署单个函数

1. 右击需部署的函数目录,抉择“Deploy Function”。

2.“底部状态栏右侧将展现函数打包与部署进度。请您急躁期待,直至呈现“Deploy successfully”音讯,示意函数已胜利部署。

3. 登录 AppGallery Connect,进入以后我的项目的云函数服务菜单,可查看到您刚刚部署的函数,函数名称与本地工程的函数目录名雷同。

批量部署函数

批量部署指将整个云函数目录下创立的所有函数同时部署到 AGC 控制台。

1. 右击“cloudfunctions”目录,抉择“Deploy Cloud Functions”。

2. 您可在底部状态栏右侧查看函数打包与部署进度。

请您急躁期待,直至呈现“Deploy successfully”音讯,示意所有函数均已胜利部署。

3. 登录 AppGallery Connect,进入以后我的项目的云函数服务菜单,可查看到您刚刚部署的云函数目录下的所有函数,函数名称均与本地工程的函数目录名雷同。

那么要想成为一名鸿蒙高级开发,以上知识点是必须要把握的,除此之外,还须要把握一些鸿蒙利用开发相干的一些技术,须要咱们独特去摸索。

为了可能让大家跟上互联网时代的技术迭代,在这里我 特邀了几位行业大佬 整顿出一份最新版的鸿蒙学习晋升材料,有须要的小伙伴自行支付,限时开源,先到先得~~~~

支付以下高清学习路线原图请点击→《鸿蒙全套学习指南》纯血鸿蒙 HarmonyOS 根底技能学习路线图

支付以上残缺高清学习路线图,请点击→《鸿蒙根底入门学习指南》小编本人整顿的局部学习材料(蕴含有高清视频、开发文档、电子书籍等)

以上分享的学习路线都适宜哪些人跟着学习?
- 应届生 / 计算机专业通过学习鸿蒙新兴技术,入行互联网,将来高起点待业。
- 0 根底转行提前布局新方向,抓住风口,自我晋升,取得更多就业机会。
- 技术晋升 / 进阶跳槽倒退瓶颈期,晋升职场竞争力,疾速把握鸿蒙技术,享受蓝海红利。

最初

鸿蒙开发学习是一个系统化的过程,从基础知识的学习到实战技能的锻炼 ,再到对前沿技术的摸索,每一环节都至关重要。 心愿这份教程材料能帮忙您疾速入门并在鸿蒙开发之路上步步攀升,成就一番事业。让咱们一起乘风破浪,拥抱鸿蒙生态的广大将来!

如果你感觉这篇内容对你有帮忙,我想麻烦大家动动小手给我:点赞,转发,有你们的『点赞和评论』,才是我发明的能源。

关注我,同时能够期待后续文章 ing,不定期分享原创常识。

想要获取更多残缺鸿蒙最新 VIP 学习材料,请点击→《鸿蒙 (Harmony OS)开发学习手册》

正文完
 0