鸿蒙端云一体化开发--开发云函数--适合小白体制

2024-04-15 00:36

本文主要是介绍鸿蒙端云一体化开发--开发云函数--适合小白体制,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

开发云函数

那什么是云函数?我们将来又怎么去使用这个云函数呢?

答:我们之前要编写一些服务端的业务逻辑代码,那现在,在这种端云一体化的开发模式下,我们是把服务端的业务逻辑代码,通过云函数来实现,简单来说,云函数其实就是用来实现服务端的业务逻辑代码。

那么云函数开发好了之后,我们怎么去使用它呢?

答:要把这个云函数部署到云侧:

部署好以后,我们还得编写端侧的代码,来调用云侧的云函数:

当然,云侧这边云函数如果有返回结果的话,我们需要把这个结果从云侧再返回给端侧:

开发步骤

第一步:新建项目和应用,开通云函数服务(AGC)

首先进入华为的App Gallery Connect界面:

AppGallery Connect (huawei.com)

完成登入操作:

后面对于《AppGallery Connect》简称为AGC.

点击我的项目:

添加项目:

有一个疑问:项目和应用的关系?

答:

应用:就跟我们日常所理解的手机上的APP应用

项目:一个项目中可以包含多个应用,那么我们接下来要开通什么云函数服务、包括以后要学到的云存储、云数据库,他们都是项目级别的,比如说,你为这个项目开通了云函数服务之后,那这个项自下的所有应用都可以使用这个云函数服务,不用为每个应用一一开通,【服务是项目级别的,项目包括多个应用

第二步:开通云函数

寻找开通界面:

在这里注意:这里开通云函数分免费档跟收费档,要求:一个月只要你调用云函数的次数不超过100万次都是免费的

将来数据存储位置在哪里:

第三步:使用端云一体化模板创建应用(DevEco Studio)

进入《项目设置》界面:

并且应用包名必须确保唯一性

在DevEco Studio开发软件中,使用端云一体化模板创建应用:

注意:DevEco Studio软件中创建应用的《Bundle name》它必须跟我们刚才AGC上应用的包名完全一致,不一致那么你的应用是创建不成功的

没登入过,记得登入一下:

Bundle name只要跟AGC那边的包名匹配得上,它就相当于已经把我们本地的这个项目代码跟AGC上那个应用关联起来了

创建后:

对于项目管理进行细说:

查看云函数代码:

对于云函数代码进行刨析:

let myHandler = async function (event, context, callback, logger) {logger.info(event);if (event.httpMethod) {const json = JSON.parse(event.body)callback({code: 0,desc: `success`,debug: event.body,data: `Hello, ${json.name}`});} else {callback({code: 0,desc: `success`,debug: `${JSON.stringify(event)}`,data: `Hello, ${event.body.name}`});}};export { myHandler };

从上可见,其中:

1.event 即为调用云函数的入参,这部分将来由 client 发送
  1.1 注意:不同方式触发的 event 格式会有不同

参见 [event对象-附录-云函数 | 华为开发者联盟 (huawei.com)]
2.context 函数执行上下文

  •   * 包括环境变量
  •   * 包括 PROJECT_CREDENTIAL 凭据信息
  •   * 等等

3.callback 用来返回响应,响应中有哪些 key、value 是自定义的
4.logger 用来记录日志,日志级别有 debug,info,warn 和 error

第四步:编写云函数代码

创建hello云函数文件:

编写代码:

运行代码:

运行代码有两种方式:

第一种:本地测试运行

第二种:部署到云端测试

推荐在AGC云端测试!

* 部署云函数需要在 DevEco Studio 中以华为开发者账号登录
* 本地测试,需要使用华为提供的 node.js 环境

第五步:部署云函数

注意:部署到云测的时候,会把这个cloudfunctions文件下所有的云函数一次性的进行部署

部署前记得看看有没有登入你的华为账号:

在AGC中查看:

第六步:测试云函数

测试成功:

这篇关于鸿蒙端云一体化开发--开发云函数--适合小白体制的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/904450

相关文章

Go语言开发实现查询IP信息的MCP服务器

《Go语言开发实现查询IP信息的MCP服务器》随着MCP的快速普及和广泛应用,MCP服务器也层出不穷,本文将详细介绍如何在Go语言中使用go-mcp库来开发一个查询IP信息的MCP... 目录前言mcp-ip-geo 服务器目录结构说明查询 IP 信息功能实现工具实现工具管理查询单个 IP 信息工具的实现服

Python的time模块一些常用功能(各种与时间相关的函数)

《Python的time模块一些常用功能(各种与时间相关的函数)》Python的time模块提供了各种与时间相关的函数,包括获取当前时间、处理时间间隔、执行时间测量等,:本文主要介绍Python的... 目录1. 获取当前时间2. 时间格式化3. 延时执行4. 时间戳运算5. 计算代码执行时间6. 转换为指

Python正则表达式语法及re模块中的常用函数详解

《Python正则表达式语法及re模块中的常用函数详解》这篇文章主要给大家介绍了关于Python正则表达式语法及re模块中常用函数的相关资料,正则表达式是一种强大的字符串处理工具,可以用于匹配、切分、... 目录概念、作用和步骤语法re模块中的常用函数总结 概念、作用和步骤概念: 本身也是一个字符串,其中

shell编程之函数与数组的使用详解

《shell编程之函数与数组的使用详解》:本文主要介绍shell编程之函数与数组的使用,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录shell函数函数的用法俩个数求和系统资源监控并报警函数函数变量的作用范围函数的参数递归函数shell数组获取数组的长度读取某下的

使用Python开发一个带EPUB转换功能的Markdown编辑器

《使用Python开发一个带EPUB转换功能的Markdown编辑器》Markdown因其简单易用和强大的格式支持,成为了写作者、开发者及内容创作者的首选格式,本文将通过Python开发一个Markd... 目录应用概览代码结构与核心组件1. 初始化与布局 (__init__)2. 工具栏 (setup_t

MySQL高级查询之JOIN、子查询、窗口函数实际案例

《MySQL高级查询之JOIN、子查询、窗口函数实际案例》:本文主要介绍MySQL高级查询之JOIN、子查询、窗口函数实际案例的相关资料,JOIN用于多表关联查询,子查询用于数据筛选和过滤,窗口函... 目录前言1. JOIN(连接查询)1.1 内连接(INNER JOIN)1.2 左连接(LEFT JOI

Spring Shell 命令行实现交互式Shell应用开发

《SpringShell命令行实现交互式Shell应用开发》本文主要介绍了SpringShell命令行实现交互式Shell应用开发,能够帮助开发者快速构建功能丰富的命令行应用程序,具有一定的参考价... 目录引言一、Spring Shell概述二、创建命令类三、命令参数处理四、命令分组与帮助系统五、自定义S

MySQL中FIND_IN_SET函数与INSTR函数用法解析

《MySQL中FIND_IN_SET函数与INSTR函数用法解析》:本文主要介绍MySQL中FIND_IN_SET函数与INSTR函数用法解析,本文通过实例代码给大家介绍的非常详细,感兴趣的朋友一... 目录一、功能定义与语法1、FIND_IN_SET函数2、INSTR函数二、本质区别对比三、实际场景案例分

鸿蒙中Axios数据请求的封装和配置方法

《鸿蒙中Axios数据请求的封装和配置方法》:本文主要介绍鸿蒙中Axios数据请求的封装和配置方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录1.配置权限 应用级权限和系统级权限2.配置网络请求的代码3.下载在Entry中 下载AxIOS4.封装Htt

鸿蒙中@State的原理使用详解(HarmonyOS 5)

《鸿蒙中@State的原理使用详解(HarmonyOS5)》@State是HarmonyOSArkTS框架中用于管理组件状态的核心装饰器,其核心作用是实现数据驱动UI的响应式编程模式,本文给大家介绍... 目录一、@State在鸿蒙中是做什么的?二、@Spythontate的基本原理1. 依赖关系的收集2.