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

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

相关文章

MySQL 中的 CAST 函数详解及常见用法

《MySQL中的CAST函数详解及常见用法》CAST函数是MySQL中用于数据类型转换的重要函数,它允许你将一个值从一种数据类型转换为另一种数据类型,本文给大家介绍MySQL中的CAST... 目录mysql 中的 CAST 函数详解一、基本语法二、支持的数据类型三、常见用法示例1. 字符串转数字2. 数字

Python内置函数之classmethod函数使用详解

《Python内置函数之classmethod函数使用详解》:本文主要介绍Python内置函数之classmethod函数使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地... 目录1. 类方法定义与基本语法2. 类方法 vs 实例方法 vs 静态方法3. 核心特性与用法(1编程客

Python函数作用域示例详解

《Python函数作用域示例详解》本文介绍了Python中的LEGB作用域规则,详细解析了变量查找的四个层级,通过具体代码示例,展示了各层级的变量访问规则和特性,对python函数作用域相关知识感兴趣... 目录一、LEGB 规则二、作用域实例2.1 局部作用域(Local)2.2 闭包作用域(Enclos

MySQL count()聚合函数详解

《MySQLcount()聚合函数详解》MySQL中的COUNT()函数,它是SQL中最常用的聚合函数之一,用于计算表中符合特定条件的行数,本文给大家介绍MySQLcount()聚合函数,感兴趣的朋... 目录核心功能语法形式重要特性与行为如何选择使用哪种形式?总结深入剖析一下 mysql 中的 COUNT

MySQL 中 ROW_NUMBER() 函数最佳实践

《MySQL中ROW_NUMBER()函数最佳实践》MySQL中ROW_NUMBER()函数,作为窗口函数为每行分配唯一连续序号,区别于RANK()和DENSE_RANK(),特别适合分页、去重... 目录mysql 中 ROW_NUMBER() 函数详解一、基础语法二、核心特点三、典型应用场景1. 数据分

MySQL数据库的内嵌函数和联合查询实例代码

《MySQL数据库的内嵌函数和联合查询实例代码》联合查询是一种将多个查询结果组合在一起的方法,通常使用UNION、UNIONALL、INTERSECT和EXCEPT关键字,下面:本文主要介绍MyS... 目录一.数据库的内嵌函数1.1聚合函数COUNT([DISTINCT] expr)SUM([DISTIN

Python get()函数用法案例详解

《Pythonget()函数用法案例详解》在Python中,get()是字典(dict)类型的内置方法,用于安全地获取字典中指定键对应的值,它的核心作用是避免因访问不存在的键而引发KeyError错... 目录简介基本语法一、用法二、案例:安全访问未知键三、案例:配置参数默认值简介python是一种高级编

python 常见数学公式函数使用详解(最新推荐)

《python常见数学公式函数使用详解(最新推荐)》文章介绍了Python的数学计算工具,涵盖内置函数、math/cmath标准库及numpy/scipy/sympy第三方库,支持从基础算术到复杂数... 目录python 数学公式与函数大全1. 基本数学运算1.1 算术运算1.2 分数与小数2. 数学函数

SpringBoot开发中十大常见陷阱深度解析与避坑指南

《SpringBoot开发中十大常见陷阱深度解析与避坑指南》在SpringBoot的开发过程中,即使是经验丰富的开发者也难免会遇到各种棘手的问题,本文将针对SpringBoot开发中十大常见的“坑... 目录引言一、配置总出错?是不是同时用了.properties和.yml?二、换个位置配置就失效?搞清楚加

Python中对FFmpeg封装开发库FFmpy详解

《Python中对FFmpeg封装开发库FFmpy详解》:本文主要介绍Python中对FFmpeg封装开发库FFmpy,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐... 目录一、FFmpy简介与安装1.1 FFmpy概述1.2 安装方法二、FFmpy核心类与方法2.1 FF