调用云服务认证体系

2024-09-05 12:20
文章标签 服务 认证 调用 体系

本文主要是介绍调用云服务认证体系,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一、介绍
基于鸿蒙Next实现应用的认证注册流程。
二、场景需求

用户注册模块:

邮箱/手机号验证:

密码设置:

个人信息填写:

用户登录模块:

邮箱/手机号与密码登录:
用户输入注册时的邮箱/手机号和密码。
第三方登录选项:
提供使用社交账号(如微信、Facebook、Google等)直接登录的选项。

忘记密码模块:

找回密码流程:
用户输入注册时的邮箱/手机号,系统发送重置链接或验证码。
用户通过链接或验证码进入重置密码界面。

多因素认证(可选):

用户在登录后可选择启用多因素认证(如短信验证码、邮箱验证、Authenticator应用等)。

错误处理与反馈:

系统需提供清晰的错误信息(如“邮箱已被注册”、“密码格式不正确”等)。
注册成功后显示欢迎信息并引导用户进行后续操作(如设置个人资料)。

潜在价值:提供安全、简便的注册与认证流程,提高用户体验。通过验证机制确保数据安全,减少虚假账户,同时保护用户隐私。
提升用户的快速注册与登录效率,增强用户留存和活跃度。
这种认证注册流程可以确保用户体验流畅,同时满足安全性与隐私保护的需求。

三、业务步骤
第一步:在页面初始化的时候判定账号是否注册
第二步:账号注册登录,直接显示可操作页面
第三步:账号未注册登录,进入注册登录环节
第四步:注册认证账号完成

四、效果展示

#HarmonyOS NEXT 体验官#调用云服务认证体系-鸿蒙开发者社区

五:代码展示:

import { promptAction, router } from '@kit.ArkUI';
import cloud from '@hw-agconnect/cloud';
import { PointsList } from '../PointsList';
import schema from '../idiom-schema.json';
import { Logger } from '@hw-agconnect/hmcore';
import { TAG } from '@ohos/hypium/src/main/Constant';import { CommonConstants, FooterTabType } from '../common/CommonConstants';
import { HomePage } from '../pages/HomePage'
import { IdiomPage } from '../pages/IdiomPage'
import { PointsListPage } from '../pages/PointsListPage'
import { MinePage } from '../pages/MinePage'AppStorage.setOrCreate('isLogin', true)
AppStorage.setOrCreate('Phone', 'admin')
AppStorage.setOrCreate('Password', '123456')@Entry
@Component
struct Index {@State currentIndex: number = 0;@State fontColor: string = '#182431'@State selectedFontColor: string = '#007DFF'private controller: TabsController = new TabsController()@Provide pointsList: PointsList[] = [] //排上榜单数据@BuildertabBuilder(tabList: FooterTabType[], index: number) {Column() {Image(this.currentIndex === index ? tabList[index].icon_select : tabList[index].icon_normal).width(28).height(28).objectFit(ImageFit.Contain)Text(tabList[index].title).fontColor(this.currentIndex === index ? this.selectedFontColor : this.fontColor).fontSize(12).fontWeight(500).lineHeight(20)}.width('100%')}onPageShow(): void {if (router.getParams() as number != null && router.getParams() as number != undefined) {this.currentIndex = router.getParams() as number} else {this.currentIndex = 0}this.isSilentLogin() // 是否登录}isSilentLogin() {cloud.auth().getCurrentUser().then(user => {if (user) {//业务逻辑AppStorage.set('isLogin', false)return}AppStorage.set('isLogin', true)});}build() {Stack() {Tabs({ barPosition: BarPosition.End, controller: this.controller }) {TabContent() {Column() {HomePage()}.height('100%').width('100%').backgroundColor(0xeeeeee)}.tabBar(this.tabBuilder(CommonConstants.FOOTER_TAB_TITLE, 0))TabContent() {Column() {IdiomPage()}.height('100%').width('100%').backgroundColor(0xeeeeee)}.tabBar(this.tabBuilder(CommonConstants.FOOTER_TAB_TITLE, 1))TabContent() {Column() {PointsListPage()}.height('100%').width('100%').backgroundColor(0xeeeeee)}.tabBar(this.tabBuilder(CommonConstants.FOOTER_TAB_TITLE, 2))TabContent() {Column() {MinePage()}.height('100%').width('100%').backgroundColor(0xeeeeee)}.tabBar(this.tabBuilder(CommonConstants.FOOTER_TAB_TITLE, 3))}.scrollable(false).expandSafeArea([SafeAreaType.SYSTEM], [SafeAreaEdge.TOP, SafeAreaEdge.BOTTOM]).height("100%").width("100%").onChange((idx: number) => {this.currentIndex = idx})}.height('100%').width('100%')}
}

这篇关于调用云服务认证体系的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

windos server2022的配置故障转移服务的图文教程

《windosserver2022的配置故障转移服务的图文教程》本文主要介绍了windosserver2022的配置故障转移服务的图文教程,以确保服务和应用程序的连续性和可用性,文中通过图文介绍的非... 目录准备环境:步骤故障转移群集是 Windows Server 2022 中提供的一种功能,用于在多个

解决systemctl reload nginx重启Nginx服务报错:Job for nginx.service invalid问题

《解决systemctlreloadnginx重启Nginx服务报错:Jobfornginx.serviceinvalid问题》文章描述了通过`systemctlstatusnginx.se... 目录systemctl reload nginx重启Nginx服务报错:Job for nginx.javas

Idea调用WebService的关键步骤和注意事项

《Idea调用WebService的关键步骤和注意事项》:本文主要介绍如何在Idea中调用WebService,包括理解WebService的基本概念、获取WSDL文件、阅读和理解WSDL文件、选... 目录前言一、理解WebService的基本概念二、获取WSDL文件三、阅读和理解WSDL文件四、选择对接

Java调用Python代码的几种方法小结

《Java调用Python代码的几种方法小结》Python语言有丰富的系统管理、数据处理、统计类软件包,因此从java应用中调用Python代码的需求很常见、实用,本文介绍几种方法从java调用Pyt... 目录引言Java core使用ProcessBuilder使用Java脚本引擎总结引言python

java如何调用kettle设置变量和参数

《java如何调用kettle设置变量和参数》文章简要介绍了如何在Java中调用Kettle,并重点讨论了变量和参数的区别,以及在Java代码中如何正确设置和使用这些变量,避免覆盖Kettle中已设置... 目录Java调用kettle设置变量和参数java代码中变量会覆盖kettle里面设置的变量总结ja

浅析Spring Security认证过程

类图 为了方便理解Spring Security认证流程,特意画了如下的类图,包含相关的核心认证类 概述 核心验证器 AuthenticationManager 该对象提供了认证方法的入口,接收一个Authentiaton对象作为参数; public interface AuthenticationManager {Authentication authenticate(Authenti

如何在页面调用utility bar并传递参数至lwc组件

1.在app的utility item中添加lwc组件: 2.调用utility bar api的方式有两种: 方法一,通过lwc调用: import {LightningElement,api ,wire } from 'lwc';import { publish, MessageContext } from 'lightning/messageService';import Ca

【区块链 + 人才服务】可信教育区块链治理系统 | FISCO BCOS应用案例

伴随着区块链技术的不断完善,其在教育信息化中的应用也在持续发展。利用区块链数据共识、不可篡改的特性, 将与教育相关的数据要素在区块链上进行存证确权,在确保数据可信的前提下,促进教育的公平、透明、开放,为教育教学质量提升赋能,实现教育数据的安全共享、高等教育体系的智慧治理。 可信教育区块链治理系统的顶层治理架构由教育部、高校、企业、学生等多方角色共同参与建设、维护,支撑教育资源共享、教学质量评估、

【区块链 + 人才服务】区块链集成开发平台 | FISCO BCOS应用案例

随着区块链技术的快速发展,越来越多的企业开始将其应用于实际业务中。然而,区块链技术的专业性使得其集成开发成为一项挑战。针对此,广东中创智慧科技有限公司基于国产开源联盟链 FISCO BCOS 推出了区块链集成开发平台。该平台基于区块链技术,提供一套全面的区块链开发工具和开发环境,支持开发者快速开发和部署区块链应用。此外,该平台还可以提供一套全面的区块链开发教程和文档,帮助开发者快速上手区块链开发。

【Kubernetes】K8s 的安全框架和用户认证

K8s 的安全框架和用户认证 1.Kubernetes 的安全框架1.1 认证:Authentication1.2 鉴权:Authorization1.3 准入控制:Admission Control 2.Kubernetes 的用户认证2.1 Kubernetes 的用户认证方式2.2 配置 Kubernetes 集群使用密码认证 Kubernetes 作为一个分布式的虚拟