当前位置: 首页 > wzjs >正文

上海web网站开发百度竞价排名多少钱

上海web网站开发,百度竞价排名多少钱,自媒体全平台发布,免费网站地址申请一、场景介绍 华为账号登录是基于OAuth 2.0协议标准和OpenID Connect协议标准构建的OAuth2.0 授权登录系统,元服务可以方便地获取华为账号用户的身份标识,快速建立元服务内的用户体系。 用户打开元服务时,不需要用户点击登录/注册按钮&#…

一、场景介绍
华为账号登录是基于OAuth 2.0协议标准和OpenID Connect协议标准构建的OAuth2.0 授权登录系统,元服务可以方便地获取华为账号用户的身份标识,快速建立元服务内的用户体系。

用户打开元服务时,不需要用户点击登录/注册按钮,即可获取用户的身份标识UnionID/OpenID,完成静默登录。静默登录详细接入体验可参考Account Kit提供的SampleCode示例工程。

如果您需要将用户与已注册账号关联时,为用户同步历史数据资产,可以向用户申请获取手机号。

二、基础概念
华为账号用户身份标识包含UnionID和OpenID,具体格式要求请参考OpenID和UnionID的格式说明,两者的定义与使用场景:
 

鸿蒙应用元服务开发-Account Kit配置登录权限-鸿蒙开发者社区


说明

在开发元服务时,您需要考虑同一用户在非元服务和元服务的用户数据是否互通。如果您之前使用OpenID来关联用户数据,我们建议将用户数据关系切换成UnionID,以确保您的用户使用元服务后可以继承老版本的用户数据。

三、业务流程
 

鸿蒙应用元服务开发-Account Kit配置登录权限-鸿蒙开发者社区


流程说明:

1、用户打开元服务,元服务业务方调用登录API传入forceLogin = false等参数调用登录API。

2、如华为账号未登录,元服务会获取到1001502001 用户未登录华为账号错误码,再根据需要自行处理。

3、如华为账号已登录,且API调用成功,元服务能获取到UnionID、Authorization Code等登录结果。

4、元服务通过用户身份标识UnionID判断用户已登录后,服务端进行安全认证后用户即可完成静默登录。

四、接口说明
静默登录关键接口如下表所示,具体API说明详见API参考。
 

鸿蒙应用元服务开发-Account Kit配置登录权限-鸿蒙开发者社区


五、开发前提
在进行代码开发前,请先确认您已完成配置Client ID工作。该场景无需申请scope权限。

六、客户端开发
导入authentication模块及相关公共模块。

import { authentication } from '@kit.AccountKit';
import { util } from '@kit.ArkTS';
import { hilog } from '@kit.PerformanceAnalysisKit';
import { BusinessError } from '@kit.BasicServicesKit';

    创建登录请求并设置参数

    // 创建登录请求,并设置参数
    const loginRequest = new authentication.HuaweiIDProvider().createLoginWithHuaweiIDRequest();
    // false表示当用户未登录华为账号时,不会拉起华为账号登录界面;直接返回1001502001错误码。
    loginRequest.forceLogin = false;
    // 用于防跨站点请求伪造。
    loginRequest.state = util.generateRandomUUID();

      调用AuthenticationController对象的executeRequest方法执行登录请求,并处理登录结果,获取到UnionID、OpenID、Authorization Code及ID Token。之后将Authorization Code传给元服务服务器处理,可参考客户端与服务端交互开发的开发步骤a和b。元服务可以通过公开的网址获取到华为账号服务器发布的公钥,对签名和ID Token中的必要信息进行验证,以证明其没有被篡改过。解析ID Token可参考ID Token解析与验证。

      // 执行登录请求
      try {const controller = new authentication.AuthenticationController();controller.executeRequest(loginRequest).then((response: authentication.LoginWithHuaweiIDResponse) => {const loginWithHuaweiIDResponse = response as authentication.LoginWithHuaweiIDResponse;const state = loginWithHuaweiIDResponse.state;if (state && loginRequest.state !== state) {hilog.error(0x0000, 'testTag', `Failed to login. The state is different, response state: ${state}`);return;}hilog.info(0x0000, 'testTag', 'Succeeded in logging in.');const loginWithHuaweiIDCredential = loginWithHuaweiIDResponse.data!;const code = loginWithHuaweiIDCredential.authorizationCode;const idToken = loginWithHuaweiIDCredential.idToken;const openID = loginWithHuaweiIDCredential.openID;const unionID = loginWithHuaweiIDCredential.unionID;// 开发者处理code, idToken, openID, unionID}).catch((error: BusinessError) => {this.dealAllError(error);})
      } catch (error) {this.dealAllError(error);
      }
      // 错误处理
      dealAllError(error: BusinessError): void {hilog.error(0x0000, 'testTag', 'Failed to login, errorCode=%{public}d, errorMsg=%{public}s', error.code,error.message);
      }

        七、服务端开发
        1.元服务服务器使用Client ID、Client Secret、Authorization Code调用获取用户级凭证的接口向华为账号服务器请求获取Access Token、Refresh Token。

        2.使用Access Token调用解析凭证接口获取用户的UnionID。

        (1)Access Token过期处理

        由于Access Token的有效期仅为60分钟,当Access Token失效或者即将失效时(可通过REST API错误码判断),可以使用Refresh Token(有效期180天)通过刷新凭证向华为账号服务器请求获取新的Access Token。

        说明

        当Access Token失效时,若元服务不使用Refresh Token向华为账号服务器请求获取新的Access Token,账号的授权信息将会失效,导致使用Access Token的功能都会失败。

        当Access Token非正常失效(如修改密码、退出账号、删除设备)时,元服务可重新登录授权获取Authorization Code,向华为账号服务器请求获取新的Access Token。

        (2)Refresh Token过期处理

        由于Refresh Token的有效期为180天,当Refresh Token失效后(可通过REST API错误码判断),元服务服务器需要通知客户端,重新调用授权接口,请求用户重新授权。

        3.元服务在自己的用户体系通过查询获取的UnionID判断该用户是否已关联。如已关联,则完成用户登录;如未关联,则创建新用户,绑定UnionID,完成用户登录。

        本文主要引用参考HarmonyOS官方网站

        http://www.dtcms.com/wzjs/177679.html

        相关文章:

      • 站群 网站如何做房地产新闻最新消息
      • 国家对网站建设的要求平台营销策略
      • 响应式 html5 css3 网站模板百度关键词搜索量查询
      • 电商网站建设规划书上海品牌推广公司
      • 平面设计用什么软件最好广州谷歌seo公司
      • .com网站制作google seo怎么做
      • 至高建设集团 网站无锡seo优化
      • 动态网站欣赏免费发广告的平台
      • 政府的网站应该怎么做域名注册新网
      • 网站建设 成本分析长沙谷歌优化
      • 腾讯有服务器如何做网站北京网站营销seo方案
      • 发卡网站建设网络seo是什么意思
      • 临沂网站建设哪家最好留号码的广告网站不需要验证码
      • 网站上怎么做动画广告甘肃seo技术
      • 西安信息网站建设搜索引擎seo外包
      • 大庆公司做网站百度软文
      • 百度给公司做网站效果咋样搜索引擎收录提交入口
      • 做交友类网站适合什么cms品牌推广方案包括哪些
      • 企业建设营销网站的目的是什么登录百度app
      • 做面包的公司网站今日新闻内容摘抄
      • 做网站开发语言百度今日排行榜
      • 专业做化妆品外包材的招聘网站国家免费技能培训平台
      • 企业公司信息网重庆网站seo教程
      • 网站建设与管理自考百度sem竞价托管
      • 国土局网站建设经验seo是什么单位
      • 岳阳做网站推荐智能网站排名优化
      • 重庆自适应网站建设接广告赚钱的平台
      • 美食网站建设策划书域名申请哪家好
      • 个人备案做分站的网站吗城市分站seo
      • app下载安装官方网站百度竞价排名