一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

登录方法、装置、设备及计算机可读存储介质与流程

2021-12-04 01:33:00 来源:中国专利 TAG:


1.本技术涉及计算机技术领域,具体而言,本技术涉及一种登录方法、装置、设备及计算机可读存储介质。


背景技术:

2.电子竞技是电子游戏比赛达到竞技层面的体育项目,电子竞技就是利用电子设备作为运动器械进行的、人与人之间的智力和体力结合的比拼。随着电子竞技的蓬勃发展,出现了越来越多的游戏app(application,应用程序)。现有技术中的某些游戏app,用户可以通过第三方的客户端a、第三方的客户端b等进行登录。但是客户端a的账户和客户端b的账户之间没有关联,用户在使用客户端a和客户端b分别登录时,会出现两个账户的情况,从而提高了用户使用成本;而且当服务平台统计游戏用户数量时,统计的用户数量会大于实际的用户数量,从而造成统计的用户数量不准确。


技术实现要素:

3.本技术针对现有的方式的缺点,提出一种登录方法、装置、设备及计算机可读存储介质,用以解决如何在用户登录场景中实现至少两个第三方的客户端的账号关联到一起且确保用户安全的问题。
4.第一方面,本技术提供了一种登录方法,由第一服务端执行,包括:
5.接收来自终端的第一客户端发送的登录凭证,登录凭证用于表征第一客户端通过终端上至少两个第二客户端中的任一第二客户端的登录组件进行用户登录;
6.响应于确定登录凭证为合法,发送第一消息给第二服务端,以指示第二服务端根据第一消息确定访问令牌;
7.接收第二服务端发送的访问令牌,并根据访问令牌,确定任一第二客户端的身份标识;
8.响应于确定第一服务端中存在任一用户标识与任一第二客户端的身份标识之间为映射关系,则发送登录态给所述第一客户端,以指示第一客户端进行用户登录。
9.在一个实施例中,响应于确定登录凭证为合法,发送第一消息给第二服务端,包括:
10.响应于调用预定的验证接口确定登录凭证为合法,发送包括登录凭证的第一消息给第二服务端,以指示第二服务端根据所述登录凭证、任一第二客户端的密钥和任一第二客户端的账号,确定访问令牌。
11.在一个实施例中,根据访问令牌,确定任一第二客户端的身份标识,包括:
12.响应于确定访问令牌为合法,基于访问令牌,调用预定的用户信息接口查询用户信息,并将查询到的用户信息发送给第二服务端,以指示第二服务端根据访问令牌和所述用户信息,得到验证信息;
13.接收第二服务端发送的所述验证信息,并根据验证信息,确定任一第二客户端的
身份标识。
14.在一个实施例中,若确定第一服务端中不存在任一用户标识与任一第二客户端的身份标识之间为映射关系,则发送第二消息给第一客户端,以指示第一客户端发送终端的通信号码,以及与终端的通信号码相关的验证码;
15.接收第一客户端发送的终端的通信号码和验证码,响应于确定终端的通信号码和验证码为合法,生成与任一第二客户端的身份标识存在映射关系的用户标识,并发送登录态给第一客户端。
16.在一个实施例中,在接收来自终端的第一客户端发送的登录凭证之前,还包括:
17.接收第一客户端发送的第一客户端存储的登录态;
18.当根据第一客户端存储的登录态,确定第一服务端储存的登录态已经过期,则发送第三消息给第一客户端,以用于指示第一客户端跳转到登录界面;
19.接收来自终端的第一客户端发送的登录凭证,包括:
20.接收来自终端的第一客户端发送的、由用户通过登录界面触发生成的登录凭证。
21.在一个实施例中,在接收来自终端的第一客户端发送的登录凭证之前,还包括:
22.接收第一客户端发送的第一客户端存储的登录态;
23.当根据第一客户端存储的登录态,确定第一服务端储存的登录态没有过期,则将第一服务端储存的登录态进行更新,得到更新后的登录态;
24.将更新后的登录态发送给第一客户端,以指示第一客户端直接登录成功。
25.在一个实施例中,任一用户标识与任一第二客户端之间均存在映射关系;任一用户标识与终端的通信号码之间存在映射关系。
26.第二方面,本技术提供了一种登录装置,登录装置通过第一服务端执行,包括:
27.第一处理模块,用于接收来自终端的第一客户端发送的登录凭证,登录凭证用于表征第一客户端通过终端上至少两个第二客户端中的任一第二客户端的登录组件进行用户登录;
28.第二处理模块,用于响应于确定登录凭证为合法,发送第一消息给第二服务端,以指示第二服务端根据第一消息确定访问令牌;
29.第三处理模块,用于接收第二服务端发送的访问令牌,并根据访问令牌,确定任一第二客户端的身份标识;
30.第四处理模块,用于响应于确定第一服务端中存在任一用户标识与任一第二客户端的身份标识之间为映射关系,则发送登录态给第一客户端,以指示第一客户端进行用户登录。
31.第三方面,本技术提供了一种电子设备,包括:处理器、存储器和总线;
32.总线,用于连接处理器和存储器;
33.存储器,用于存储操作指令;
34.处理器,用于通过调用操作指令,执行本技术第一方面的登录方法。
35.第四方面,本技术提供了一种计算机可读存储介质,存储有计算机程序,计算机程序被用于执行本技术第一方面的登录方法。
36.本技术实施例提供的技术方案,至少具有如下有益效果:
37.第一服务端接收来自终端的第一客户端发送的登录凭证,登录凭证用于表征第一
客户端通过终端上至少两个第三方的第二客户端中的任一第二客户端的登录组件进行用户登录;响应于确定登录凭证为合法,发送第一消息给任一第二客户端对应的第二服务端,以指示第二服务端根据第一消息确定访问令牌;接收第二服务端发送的访问令牌,并根据访问令牌,确定任一第二客户端的身份标识;用户在非首次登录中,第一服务端中存在用户标识与至少两个第二客户端的身份标识之间为映射关系,即该用户标识与至少两个第二客户端的账号之间均存在绑定关系;响应于确定第一服务端中存在任一用户标识与任一第二客户端的身份标识之间为映射关系,则发送登录态给第一客户端,以指示第一客户端进行用户登录;如此,在用户登录场景中实现了同时将至少两个第二客户端的账号关联到该用户的唯一的用户标识,从而降低了用户使用成本,提升了服务平台统计游戏用户数量的准确度。用户的整个账户体系以用户标识作为该用户的唯一用户标识,该用户的手机号(手机号码)可以变,该用户的用户标识不会变,也就是说,用户的手机号发生变化不会影响用户标识,以及用户标识和至少两个第二客户端的身份标识(账号)之间的映射关系;当用户更换手机号后,没有及时解绑或换绑,即使旧手机号被其他用户注册,也不会出现该用户账户丢失的安全风险。
附图说明
38.为了更清楚地说明本技术实施例中的技术方案,下面将对本技术实施例描述中所需要使用的附图作简单地介绍。
39.图1为本技术实施例提供的登录系统的架构示意图;
40.图2为本技术实施例提供的一种登录方法的流程示意图;
41.图3为本技术实施例提供的一种登录的示意图;
42.图4为本技术实施例提供的一种登录的示意图;
43.图5为本技术实施例提供的一种登录的示意图;
44.图6为本技术实施例提供的一种登录的示意图;
45.图7为本技术实施例提供的一种登录方法的流程示意图;
46.图8为本技术实施例提供的一种登录方法的流程示意图;
47.图9为本技术实施例提供的一种登录方法的流程示意图;
48.图10为本技术实施例提供的一种登录装置的结构示意图;
49.图11为本技术实施例提供的一种电子设备的结构示意图。
具体实施方式
50.为使得本技术的发明目的、特征、优点能够更加的明显和易懂,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分实施例,而非全部实施例。基于本技术中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
51.下面详细描述本技术的实施例,该实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本技术,而不能解释为对本技术的限制。
52.本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一
个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本技术的说明书中使用的措辞“包括”是指存在特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的全部或任一单元和全部组合。
53.本技术实施例是登录系统提供的一种登录方法,该登录方法涉及云技术的多种领域,例如云技术中的云计算、云服务、云游戏等。
54.云计算(cloud computing)是一种计算模式,它将计算任务分布在大量计算机构成的资源池上,使各种应用系统能够根据需要获取计算力、存储空间和信息服务。提供资源的网络被称为“云”。“云”中的资源在使用者看来是可以无限扩展的,并且可以随时获取,按需使用,随时扩展,按使用付费。
55.作为云计算的基础能力提供商,会建立云计算资源池(简称云平台,一般称为iaas(infrastructure as a service,基础设施即服务)平台,在资源池中部署多种类型的虚拟资源,供外部客户选择使用。云计算资源池中主要包括:计算设备(为虚拟化机器,包含操作系统)、存储设备、网络设备。
56.按照逻辑功能划分,在iaas(infrastructure as a service,基础设施即服务)层上可以部署paas(platform as a service,平台即服务)层,paas层之上再部署saas(software as a service,软件即服务)层,也可以直接将saas部署在iaas上。paas为软件运行的平台,如数据库、web容器等。saas为各式各样的业务软件,如web门户网站、短信群发器等。一般来说,saas和paas相对于iaas是上层。
57.所谓人工智能云服务,一般也被称作是aiaas(aias a service,中文为“ai即服务”)。这是目前主流的一种人工智能平台的服务方式,具体来说aiaas平台会把几类常见的ai服务进行拆分,并在云端提供独立或者打包的服务。这种服务模式类似于开了一个ai主题商城:所有的开发者都可以通过api接口的方式来接入使用平台提供的一种或者是多种人工智能服务,部分资深的开发者还可以使用平台提供的ai框架和ai基础设施来部署和运维自已专属的云人工智能服务。
58.人工智能(artificial intelligence,ai)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
59.人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习、自动驾驶、智慧交通等几大方向。
60.云游戏(cloud gaming)又可称为游戏点播(gaming on demand),是一种以云计算技术为基础的在线游戏技术。云游戏技术使图形处理与数据运算能力相对有限的轻端设备
(thin client)能运行高品质游戏。在云游戏场景下,游戏并不在玩家游戏终端,而是在云端服务器中运行,并由云端服务器将游戏场景渲染为视频音频流,通过网络传输给玩家游戏终端。玩家游戏终端无需拥有强大的图形运算与数据处理能力,仅需拥有基本的流媒体播放能力与获取玩家输入指令并发送给云端服务器的能力即可。
61.为了更好的理解及说明本技术实施例的方案,下面对本技术实施例中所涉及到的一些技术用语进行简单说明。
62.微信的登录方式:使用微信的登录组件,利用微信授权进行登录。
63.手q的登录方式:手q可以是手机qq,手q可以是即时通信软件,手q可以是手机上的qq客户端;使用qq的登录组件,每次登录跳转到qq客户端进行授权登录。
64.session:在计算机中,尤其是在网络应用中,称为会话控制。session对象存储session数据,session数据包括session_id、特定用户(例如,手机用户)会话所需的属性及配置信息。这样,当用户在应用程序的web页之间跳转时,存储在session对象中的变量将不会丢失,而是在整个用户会话中一直存在下去。当用户请求来自应用程序的web页时,如果该用户还没有会话,则web服务器将自动创建一个session对象。当会话过期或被放弃后,服务器将终止该会话。
65.session_id:表示session地址的id号。
66.access_token(访问令牌):在微信和手q登录体系下,下发的一种有效的登录字符串。
67.oauth2.0:oauth2.0是oauth协议的延续版本,oauth2.0关注客户端开发者的简易性,允许第三方应用代表用户获得访问的权限。oauth是一个开放协议,允许用户让第三方应用以安全且标准的方式获取该用户在某一网站、移动或桌面应用上存储的私密的资源,例如用户个人信息、照片、视频、联系人列表等,而无需将用户名和密码提供给第三方应用。oauth2.0是oauth协议的下一版本,但不向后兼容oauth1.0。oauth允许用户提供一个令牌,而不是用户名和密码来访问他们存放在特定服务提供者的数据。每一个令牌授权一个特定的网站(例如,视频编辑网站)在特定的时段(例如,接下来的2小时内)内访问特定的资源(例如仅仅是某一相册中的视频)。这样,oauth允许用户授权第三方网站访问他们存储在另外的服务提供者上的信息,而不需要分享他们的访问许可或他们数据的所有内容。
68.uid:用户的id,类似用户身份证号,每个用户都会有唯一的uid。例如,uid的长度可以定为以1到9开头的9位正整数。
69.本技术实施例提供的方案涉及云技术,下面以具体的实施例对本技术的技术方案以及本技术的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本技术的实施例进行描述。
70.本技术实施例所提供的方案可以适用于云技术领域中任意需要用户登录的应用场景。
71.为了更好的理解本技术实施例提供的方案,下面结合具体的一个应用场景对该方案进行说明。
72.在一个实施例中,图1中示出了本技术实施例所适用的一种登录系统的架构示意图,可以理解的是,本技术实施例所提供的登录方法可以适用于但不限于应用于如图1所示
的应用场景中。
73.本示例中,如图1所示,该示例中的登录系统的架构可以包括但不限于终端101、第一服务端102和至少两个第二服务端103,终端101安装了第一客户端和至少两个第二客户端,第一客户端对应第一服务端102,第二客户端对应第二服务端103。终端101、第一服务端102和至少两个第二服务端103之间可以通过网络进行交互。第一服务端102接收来自终端101的第一客户端发送的登录凭证,登录凭证用于表征第一客户端通过终端上至少两个第二客户端中的任一第二客户端的登录组件进行用户登录;响应于确定登录凭证为合法,第一服务端102发送第一消息给第二服务端103,以指示第二服务端103根据第一消息确定访问令牌;第一服务端102接收第二服务端103发送的访问令牌,并根据访问令牌,确定任一第二客户端的身份标识;响应于确定第一服务端102中存在任一用户标识与任一第二客户端的身份标识之间为映射关系,则第一服务端102发送登录态给第一客户端,以指示第一客户端进行用户登录。
74.可理解,上述仅为一种示例,本实施例在此不作限定。
75.其中,终端101可以是智能手机(如android手机、ios手机等)、手机模拟器、平板电脑、笔记本电脑、数字广播接收器、mid(mobile internet devices,移动互联网设备)、pda(个人数字助理)、台式计算机、车载终端(例如车载导航终端)、智能音箱、智能手表等。第一客户端可以是游戏app,第二客户端可以是手q或微信。第一服务端102和第二服务端103可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、cdn(content delivery network,内容分发网络)、以及大数据和人工智能平台等基础云计算服务的云服务器或服务器集群。上述网络可以包括但不限于:有线网络,无线网络,其中,该有线网络包括:局域网、城域网和广域网,该无线网络包括:蓝牙、wi

fi及其他实现无线通信的网络。具体也可基于实际应用场景需求确定,在此不作限定。
76.参见图2,图2示出了本技术实施例提供的一种登录方法的流程示意图,其中,该方法可以由任一电子设备执行,如可以是第一服务端,作为一可选实施方式,该方法可以由第一服务端执行,为了描述方便,在下文的一些可选实施例的描述中,将以第一服务端作为该方法执行主体为例进行说明。如图2所示,本技术实施例提供的登录方法包括如下步骤:
77.s101,接收来自终端的第一客户端发送的登录凭证,登录凭证用于表征第一客户端通过终端上至少两个第二客户端中的任一第二客户端的登录组件进行用户登录。
78.在一个实施例中,第一客户端可以为游戏app,也可以为云游戏的app;第二客户端可以为手q客户端(手q的app)、微信客户端(微信的app)等。第一服务端可以为游戏app对应的服务端。
79.举例说明,如图8中所示的步骤s219,客户端收到回调code(登录凭证),客户端通过调用登录接口,将登录凭证code发送给服务端。code用于表征游戏app通过终端(例如手机)上手q客户端和微信客户端中的任一客户端的登录组件进行用户登录;当用户授权手q客户端的登录组件进行用户登录,则code用于表征用户授权游戏app通过终端上手q客户端的登录组件进行用户登录;当用户授权微信客户端的登录组件进行用户登录,则code用于表征用户授权游戏app通过终端上微信客户端的登录组件进行用户登录。其中,code可以是授权码。
80.s102,响应于确定登录凭证为合法,发送第一消息给第二服务端,以指示第二服务端根据第一消息确定访问令牌。
81.在一个实施例中,第一消息包括登录凭证,登录凭证为code。第二服务端可以是手q服务端、微信服务端等。
82.在一个实施例中,响应于确定登录凭证为合法,发送第一消息给第二服务端,包括:
83.响应于调用预定的验证接口确定登录凭证为合法,发送包括登录凭证的第一消息给第二服务端,以指示第二服务端根据所述登录凭证、任一第二客户端的密钥和任一第二客户端的账号,确定访问令牌。
84.举例说明,如图8中所示的步骤s220和s221,预定的验证接口为oauth2.0验证接口;当第二服务端为手q服务端,手q服务端验证code、手q客户端的密钥secretkey和手q客户端的账号appid,得到访问令牌access_token;当第二服务端为微信服务端,微信服务端验证code、微信客户端的密钥secretkey和微信客户端的账号appid,得到访问令牌access_token。
85.s103,接收第二服务端发送的访问令牌,并根据访问令牌,确定任一第二客户端的身份标识。
86.在一个实施例中,身份标识为openid,openid可以为手q客户端的身份标识,即openid可以是与用户的手q号或手q账号对应的身份标识;openid可以为微信客户端的身份标识,即openid可以是与用户的微信号或微信账号对应的身份标识。
87.在一个实施例中,根据访问令牌,确定任一第二客户端的身份标识,包括步骤a1

a2:
88.步骤a1,响应于确定访问令牌为合法,基于访问令牌,调用预定的用户信息接口查询用户信息,并将查询到的用户信息发送给第二服务端,以指示第二服务端根据访问令牌和所述用户信息,得到验证信息。
89.在一个实施例中,用户信息接口为oauth2.0用户信息接口。用户信息包括:openid、用户昵称、用户的性别、用户个人资料填写的省份、普通用户个人资料填写的城市、国家、用户头像、用户特权信息等。
90.举例说明,如图8中所示的步骤s220和s221,手q服务端或微信服务端基于用户信息,对访问令牌access_token进行验证,得到验证信息。
91.步骤a2,接收第二服务端发送的所述验证信息,并根据验证信息,确定任一第二客户端的身份标识。
92.举例说明,如图8中所示的步骤s220和s221,手q服务端或微信服务端将验证信息发送给服务端(第一服务端),服务端根据验证信息,确定身份标识openid。
93.s104,响应于确定第一服务端中存在任一用户标识与任一第二客户端的身份标识之间为映射关系,则发送登录态给第一客户端,以指示第一客户端进行用户登录。
94.在一个实施例中,用户首次注册并登录,第一服务端生成任一用户标识,并将任一用户标识储存在第一服务端。后续用户重新登录,当任一用户标识与任一第二客户端的身份标识之间为映射关系,则第一服务端发送登录态给第一客户端。
95.在一个实施例中,任一用户标识与任一第二客户端之间均存在映射关系;任一用
户标识与终端的通信号码之间存在映射关系。
96.在一个实施例中,一个用户只对应一个uid,该uid可以同时对应多个openid,该uid与多个openid之间均存在映射关系。该uid同时对应该用户的手机号(手机号码,即终端的通信号码),该uid与用户的手机号之间存在映射关系,该用户的手机号可以变,该用户的uid不会变。用户的整个账户体系以uid作为唯一的用户标识。例如,一个用户的uid、手q客户端的openid(手q号对应的openid)、微信客户端的openid(微信号对应的openid)和用户的手机号之间相互绑定。
97.在一个实施例中,若确定第一服务端中不存在任一用户标识与任一第二客户端的身份标识之间为映射关系,则发送第二消息给第一客户端,以指示第一客户端发送终端的通信号码,以及与终端的通信号码相关的验证码;
98.接收第一客户端发送的终端的通信号码和验证码,响应于确定终端的通信号码和验证码为合法,生成与任一第二客户端的身份标识存在映射关系的用户标识,并发送登录态给第一客户端。
99.在一个实施例中,与终端的通信号码相关的验证码包括session_id,当第一服务端确定session_id有效,则生成uid(任一用户标识),并绑定openid(任一第二客户端的身份标识)和uid,建立openid和uid之间的映射关系。
100.在一个实施例中,一个用户有一个微信号和一个qq号,一个微信号对应一个openid,一个qq号对应另一个openid,这个两个不同的openid与用户的手机号之间存在映射关系,用户的手机号与uid之间存在映射关系,用户的手机号可以变化,uid不变。用户首次注册登录时,第一服务端会将两个不同的openid与用户的手机号进行绑定,同时提供一个uid。
101.在一个实施例中,在接收来自终端的第一客户端发送的登录凭证之前,还包括:
102.接收第一客户端发送的第一客户端存储的登录态;
103.当根据第一客户端存储的登录态,确定第一服务端储存的登录态已经过期,则发送第三消息给第一客户端,以用于指示第一客户端跳转到登录界面;
104.接收来自终端的第一客户端发送的登录凭证,包括:
105.接收来自终端的第一客户端发送的、由用户通过登录界面触发生成的登录凭证。
106.在一个实施例中,当客户端存储的登录态已经过期或客户端没有存储登录态,则客户端跳转到登录界面,用户需要进行重新登录。
107.在一个实施例中,在接收来自终端的第一客户端发送的登录凭证之前,还包括:
108.接收第一客户端发送的第一客户端存储的登录态;
109.当根据第一客户端存储的登录态,确定第一服务端储存的登录态没有过期,则将第一服务端储存的登录态进行更新,得到更新后的登录态;
110.将更新后的登录态发送给第一客户端,以指示第一客户端直接登录成功。
111.在一个实施例中,用户启动客户端,当客户端存储的登录态没有过期,则第一服务端将该登录态进行更新,得到更新后的登录态,客户端接收第一服务端发送的更新后的登录态,客户端保存更新后的登录态。
112.本技术实施例中,用户登录过程中使用手q或微信,进行授权登录,第一客户端和第一服务端同时存储临时的session_id(登录态),定期去刷新和校验session_id。在用户
登录过程中将uid和session_id存储到第一服务端中的session对象中,用户在其他地方登录以后当前的session_id会过期,使得用户一次只能在一个设备上进行登录,以达到安全的目的。可以使用手机号进行手q和微信的关联,在用户第一次登录过程中分配一个独立的用户标识uid,如此,形成了一套完整的安全且独立的用户账户体系。uid与手q、微信之间均存在映射关系,如此,在用户登录场景中实现了手q和微信关联到同一个用户标识,即一个用户只对应一个用户标识,从而降低了用户使用成本,提升了服务平台统计游戏用户数量的准确度。
113.为了更好的理解本技术实施例所提供的方法,下面结合具体应用场景的示例对本技术实施例的方案进行进一步说明。
114.本技术实施例所提供的登录方法应用于游戏app(客户端)的用户登录场景,例如,电竞社区app(客户端)的用户登录场景。
115.在一个实施例中,用户首次登录界面如图3所示,例如,图标1对应微信客户端的登录组件,用户使用微信首次进行登录,先绑定手机号,再绑定微信账号(微信号),最后系统提示再绑定qq账号(qq号或手q号);图标2对应手q客户端的登录组件,用户使用手q首次进行登录,先绑定手机号,再绑定qq账号(qq号或手q号),最后系统提示再绑定微信账号(微信号)。
116.在一个实施例中,用户在登录过程中会优先读取本地的登录信息,提示用户是登录本地账户还是其他账户,如图4所示的非首次登陆界面;然后利用手机号(手机号码)进行手q和微信的账户绑定关联,如图5和图6所示;其中,如图5所示的非首次登陆界面,用户使用qq账号登陆,登陆界面提示手机号已经绑定,微信账号已经绑定;如图6所示的非首次登陆界面,用户使用微信账号登陆,登陆界面提示手机号已经绑定,qq账号已经绑定。
117.本技术实施例中提供了一种登录方法,该方法的流程示意图如图7所示,该方法包括:
118.s201,用户启动客户端。
119.在一个实施例中,客户端可以为游戏app,例如,客户端为电竞社区app。
120.s202,客户端读取客户端本地的session数据。
121.s203,客户端判断客户端本地的session数据中是否存在session_id,当确定客户端本地的session数据中存在session_id,则转到步骤s204处理;当确定客户端本地的session数据中不存在session_id,则转到步骤s209处理。
122.s204,客户端调用并刷新登录态接口,发送session_id给服务端。
123.举例说明,服务端为电竞社区的服务端。
124.s205,服务端接收客户端发送的session_id,并读取服务端本地的session数据;其中,在服务端接收客户端发送的session_id之前,服务端本地的session数据已包括:与客户端发送的session_id相同的session_id,以及session_id的有效期限。
125.s206,服务端判断客户端发送的session_id是否过期,当确定客户端发送的session_id没有过期,则更新session_id,得到更新后的session_id,将更新后的session_id发送给客户端,并转到步骤s207处理;当确定客户端发送的session_id是过期,则转到步骤s209处理。
126.s207,客户端接收更新后的session_id,并保存更新后的session_id,即保存最新
登录态。
127.s208,用户刷新登录态成功。
128.s209,客户端跳转到登录界面。
129.本技术实施例中,用户启动客户端,当客户端存储的登录态没有过期,则客户端进入已登录状态;当客户端存储的登录态已经过期,则客户端跳转到登录界面,用户需要进行重新登录。
130.本技术实施例中提供了一种登录方法,该方法的流程示意图如图8所示,该方法包括:
131.s210,用户选择登录类型。
132.在一个实施例中,登录类型包括手q的登录方式和微信的登录方式。用户可以从手q的登录方式和微信的登录方式中选择一种方式作为当前的登录类型。
133.在一个实施例中,在图7中的步骤s209之后,执行图8中的步骤s210。
134.s211,客户端拉起授权。
135.在一个实施例中,客户端拉起对应的手q客户端(手q的app)或微信客户端(微信的app)进行授权登录。
136.s212,手q客户端或微信客户端提供授权界面。
137.s213,用户确认授权。
138.在一个实施例中,用户通过手q客户端或微信客户端提供的授权界面,确认是否授权通过手q客户端的登录组件或微信客户端的登录组件进行登录。例如,当用户点击手q客户端提供的授权界面上的确认图标,则用户确认授权通过手q客户端的登录组件进行登录。又例如,当用户点击手微信客户端提供的授权界面上的确认图标,则用户确认授权通过微信客户端的登录组件进行登录。
139.s214,手q客户端或微信客户端确认用户是否授权,当确认用户没有授权,则转到步骤s215处理;当确认用户授权,则转到步骤s217处理。
140.s215,客户端收到回调未授权。
141.在一个实施例中,客户端收到手q客户端或微信客户端发送的用户未授权的回调,客户端发送错误提示给用户。
142.s216,用户接收错误提示。
143.s217,手q服务端或微信服务端生成登录凭证code。
144.在一个实施例中,code可以是授权码。
145.s218,手q客户端或微信客户端携带code回调客户端。
146.s219,客户端收到回调code,调用登录接口。
147.在一个实施例中,客户端通过登录接口将code发送给服务端。
148.s220,服务端调用oauth2.0验证接口。
149.在一个实施例中,服务端调用oauth2.0验证接口确定code为合法,发送包括code的第一消息给手q服务端或微信服务端。
150.s221,手q服务端或微信服务端验证code、密钥secretkey和账号appid,生成访问令牌access_token。
151.在一个实施例中,手q服务端验证code、手q客户端的密钥secretkey和手q客户端
的账号appid,得到访问令牌access_token。
152.在一个实施例中,微信服务端验证code、微信客户端的密钥secretkey和微信客户端的账号appid,得到访问令牌access_token。
153.s222,服务端解析access_token。
154.在一个实施例中,服务端接收手q服务端或微信服务端发送的access_token,并对access_token进行解析。
155.s223,服务端判断access_token是否有效,当确定access_token没有效,则转到步骤s224处理;当确定access_token是有效,则转到步骤s225处理。
156.s224,客户端重新开始授权流程。
157.在一个实施例中,客户端接收服务端返回的access_token无效,客户端重新开始授权流程,并转到图7中的步骤s209处理。
158.s225,服务端保存结果。
159.在一个实施例中,服务端保存access_token。
160.s226,服务端调用oauth2.0用户信息接口。
161.在一个实施例中,服务端基于access_token,调用oauth2.0用户信息接口查询用户信息,并将查询到的用户信息发送给手q服务端或微信服务端。
162.s227,手q服务端或微信服务端验证access_token,并返回验证数据。
163.在一个实施例中,手q服务端或微信服务端基于用户信息,对access_token进行验证,得到验证信息。手q服务端或微信服务端将验证数据(验证信息)发送给服务端。
164.s228,服务端判断是否获取到身份标识openid,当确定没有获取到openid,这转到步骤s229处理;当确定获取到openid,这转到步骤s230处理。
165.在一个实施例中,身份标识为openid,openid可以为手q客户端的身份标识,即openid可以是与用户的手q号对应的身份标识;openid可以为微信客户端的身份标识,即openid可以是与用户的微信号对应的身份标识。例如,一个用户的uid、手q客户端的openid(手q号对应的openid)、微信客户端的openid(微信号对应的openid)和用户的手机号之间相互绑定。
166.s229,客户端提示异常。
167.在一个实施例中,客户端提升异常,并转到步骤s224处理。
168.s230,服务端读取openid和用户标识uid之间的映射关系数据。
169.s231,服务端判断openid和uid之间是否有绑定关系(映射关系),当确定openid和uid之间是有绑定关系,则转到步骤s232处理;当确定openid和uid之间没有绑定关系,则转到步骤s234处理。
170.需要说明的是,当确定openid和uid之间没有绑定关系,则说明服务端没有uid与openid之间存在映射关系。
171.s232,客户端保存最新登录态。
172.在一个实施例中,客户端接收服务端发送的登录态,并将该登录态进行保存。
173.s233,用户登录成功。
174.s234,客户端绑定手机号界面。
175.本技术实施例中,用户在非首次登录中,由于用户标识uid与手q的身份标识
openid之间为映射关系,同时该uid与微信的身份标识openid之间为映射关系,即该uid与手q、微信之间均存在绑定关系,如此,在用户登录场景中实现了手q和微信关联到同一个uid,即手q号(手q账号)和微信号(微信账号)都与uid进行了绑定,一个用户只对应一个uid,从而降低了用户使用成本,提升了服务平台统计游戏用户数量的准确度。
176.本技术实施例中提供了一种登录方法,该方法的流程示意图如图9所示,该方法包括:
177.s235,用户输入手机号和防机器人验证码。
178.在一个实施例中,在图8中的步骤s234之后,执行图9中的步骤s235。
179.s236,客户端调用发送验证码接口。
180.在一个实施例中,客户端调用发送验证码接口发送验证码和session_id给服务端;验证码可以是防机器人验证码。
181.s237,服务端判断是否触发防刷机制,当确定触发防刷机制,则转到步骤s238处理;当确定没有触发防刷机制,则转到步骤s240处理。
182.在一个实施例中,服务端基于接收到的验证码和session_id,判断是否触发防刷机制。
183.s238,客户端通过防刷机制展示冷却时间、验证码、错误信息等。
184.在一个实施例中,客户端发送错误提示给用户。
185.s239,用户接收客户端发送的错误提示。
186.s240,服务端生成验证码。
187.s241,服务端保存验证码的相关信息到会话数据。
188.s242,服务端调用sms(short message service,短信息服务)接口,发送验证码到运营商。
189.s243,运营商发送短信给用户。
190.s244,用户收到验证码。
191.s245,用户输入验证码,将验证码发送给客户端。
192.s246,客户端调用绑定接口。
193.在一个实施例中,客户端调用绑定接口发送授权的session_id给服务端。
194.s247,服务端读取授权的session_id。
195.s248,服务端判断session_id是否有效;当确定session_id没有效,则转到步骤s249处理;当确定session_id是有效,则转到步骤s250处理。
196.s249,客户端重新开始授权流程。
197.在一个实施例中,在客户端重新开始授权流程之后,转到图7中的步骤s209处理。
198.s250,服务端生成uid和登录态,绑定openid和uid,建立openid和uid之间的映射关系。
199.在一个实施例中,服务端绑定手q客户端的openid、微信客户端的openid、uid和手机号,建立手q客户端的openid、微信客户端的openid、uid和手机号之间的映射关系。
200.在一个实施例中,服务端将步骤s248中的session_id进行更新,生成更新后的session_id,更新后的session_id为步骤s250中的登录态,服务端将登录态和用户数据发送给客户端。
201.s251,服务端保存session数据、用户数据和映射数据。
202.在一个实施例中,session数据包括登录态(更新后的session_id),映射数据包括openid、uid、手机号之间的映射关系。
203.s252,客户端保存登录态。
204.s253,用户登录成功。
205.本技术实施例中,用户在首次登录中,需要建立手q客户端的openid、微信客户端的openid、uid和手机号之间的映射关系;一个用户只对应一个uid,该uid可以同时对应多个openid,该uid同时对应该用户的手机号,用户的整个账户体系以uid作为唯一的用户标识。该用户的手机号可以变,该用户的uid不会变,也就是说,用户的手机号发生变化不会影响uid,以及uid和多个openid之间的映射关系;当用户更换手机号后,没有及时解绑或换绑,即使旧手机号被其他用户注册,也不会出现该用户账户丢失的安全风险。
206.基于相同的发明构思,本技术实施例还提供了一种登录装置,该登录装置通过第一服务端执行,该登录装置的结构示意图如图10所示,登录装置40,包括第一处理模块401、第二处理模块402、第三处理模块403和第四处理模块404。
207.第一处理模块401,用于接收来自终端的第一客户端发送的登录凭证,登录凭证用于表征第一客户端通过终端上至少两个第二客户端中的任一第二客户端的登录组件进行用户登录;
208.第二处理模块402,用于响应于确定登录凭证为合法,发送第一消息给第二服务端,以指示第二服务端根据第一消息确定访问令牌;
209.第三处理模块403,用于接收第二服务端发送的访问令牌,并根据访问令牌,确定任一第二客户端的身份标识;
210.第四处理模块404,用于响应于确定第一服务端中存在任一用户标识与任一第二客户端的身份标识之间为映射关系,则发送登录态给第一客户端,以指示第一客户端进行用户登录。
211.在一个实施例中,第二处理模块402,具体用于:
212.响应于调用预定的验证接口确定登录凭证为合法,发送包括登录凭证的第一消息给第二服务端,以指示第二服务端根据所述登录凭证、任一第二客户端的密钥和任一第二客户端的账号,确定访问令牌。
213.在一个实施例中,第三处理模块403,具体用于:
214.响应于确定访问令牌为合法,基于访问令牌,调用预定的用户信息接口查询用户信息,并将查询到的用户信息发送给第二服务端,以指示第二服务端根据访问令牌和所述用户信息,得到验证信息;
215.接收第二服务端发送的所述验证信息,并根据验证信息,确定任一第二客户端的身份标识。
216.在一个实施例中,第四处理模块404,还用于:
217.若确定第一服务端中不存在任一用户标识与任一第二客户端的身份标识之间为映射关系,则发送第二消息给第一客户端,以指示第一客户端发送终端的通信号码,以及与终端的通信号码相关的验证码;
218.接收第一客户端发送的终端的通信号码和验证码,响应于确定终端的通信号码和
验证码为合法,生成与任一第二客户端的身份标识存在映射关系的用户标识,并发送登录态给第一客户端。
219.在一个实施例中,在接收来自终端的第一客户端发送的登录凭证之前,第一处理模块401,还用于:
220.接收第一客户端发送的第一客户端存储的登录态;
221.当根据第一客户端存储的登录态,确定第一服务端储存的登录态已经过期,则发送第三消息给第一客户端,以用于指示第一客户端跳转到登录界面;
222.第一处理模块401,具体用于:
223.接收来自终端的第一客户端发送的、由用户通过登录界面触发生成的登录凭证。
224.在一个实施例中,在接收来自终端的第一客户端发送的登录凭证之前,第一处理模块401,还用于:
225.接收第一客户端发送的第一客户端存储的登录态;
226.当根据第一客户端存储的登录态,确定第一服务端储存的登录态没有过期,则将第一服务端储存的登录态进行更新,得到更新后的登录态;
227.将更新后的登录态发送给第一客户端,以指示第一客户端直接登录成功。
228.在一个实施例中,任一用户标识与任一第二客户端之间均存在映射关系;任一用户标识与终端的通信号码之间存在映射关系。
229.应用本技术实施例,至少具有如下有益效果:
230.第一服务端接收来自终端的第一客户端发送的登录凭证,登录凭证用于表征第一客户端通过终端上至少两个第三方的第二客户端中的任一第二客户端的登录组件进行用户登录;响应于确定登录凭证为合法,发送第一消息给任一第二客户端对应的第二服务端,以指示第二服务端根据第一消息确定访问令牌;接收第二服务端发送的访问令牌,并根据访问令牌,确定任一第二客户端的身份标识;用户在非首次登录中,第一服务端中存在用户标识与至少两个第二客户端的身份标识之间为映射关系,即该用户标识与至少两个第二客户端的账号之间均存在绑定关系;响应于确定第一服务端中存在任一用户标识与任一第二客户端的身份标识之间为映射关系,则发送登录态给第一客户端,以指示第一客户端进行用户登录;如此,在用户登录场景中实现了同时将至少两个第二客户端的账号关联到该用户的唯一的用户标识,从而降低了用户使用成本,提升了服务平台统计游戏用户数量的准确度。用户的整个账户体系以用户标识作为该用户的唯一用户标识,该用户的手机号(手机号码)可以变,该用户的用户标识不会变,也就是说,用户的手机号发生变化不会影响用户标识,以及用户标识和至少两个第二客户端的身份标识(账号)之间的映射关系;当用户更换手机号后,没有及时解绑或换绑,即使旧手机号被其他用户注册,也不会出现该用户账户丢失的安全风险。
231.基于相同的发明构思,本技术实施例还提供了一种电子设备,该电子设备的结构示意图如图11所示,该电子设备9000包括至少一个处理器9001、存储器9002和总线9003,至少一个处理器9001均与存储器9002电连接;存储器9002被配置用于存储有至少一个计算机可执行指令,处理器9001被配置用于执行该至少一个计算机可执行指令,从而执行如本技术中任意一个实施例或任意一种可选实施方式提供的任意一种登录方法的步骤。
232.进一步,处理器9001可以是fpga(field-programmable gate array,现场可编程
门阵列)或者其它具有逻辑处理能力的器件,如mcu(microcontroller unit,微控制单元)、cpu(central process unit,中央处理器)。
233.应用本技术实施例,至少具有如下有益效果:
234.第一服务端接收来自终端的第一客户端发送的登录凭证,登录凭证用于表征第一客户端通过终端上至少两个第三方的第二客户端中的任一第二客户端的登录组件进行用户登录;响应于确定登录凭证为合法,发送第一消息给任一第二客户端对应的第二服务端,以指示第二服务端根据第一消息确定访问令牌;接收第二服务端发送的访问令牌,并根据访问令牌,确定任一第二客户端的身份标识;用户在非首次登录中,第一服务端中存在用户标识与至少两个第二客户端的身份标识之间为映射关系,即该用户标识与至少两个第二客户端的账号之间均存在绑定关系;响应于确定第一服务端中存在任一用户标识与任一第二客户端的身份标识之间为映射关系,则发送登录态给第一客户端,以指示第一客户端进行用户登录;如此,在用户登录场景中实现了同时将至少两个第二客户端的账号关联到该用户的唯一的用户标识,从而降低了用户使用成本,提升了服务平台统计游戏用户数量的准确度。用户的整个账户体系以用户标识作为该用户的唯一用户标识,该用户的手机号(手机号码)可以变,该用户的用户标识不会变,也就是说,用户的手机号发生变化不会影响用户标识,以及用户标识和至少两个第二客户端的身份标识(账号)之间的映射关系;当用户更换手机号后,没有及时解绑或换绑,即使旧手机号被其他用户注册,也不会出现该用户账户丢失的安全风险。
235.基于相同的发明构思,本技术实施例还提供了一种计算机可读存储介质,存储有计算机程序,该计算机程序用于被处理器执行时实现本技术中任意一个实施例或任意一种可选实施方式提供的任意一种登录方法的步骤。
236.本技术实施例提供的计算机可读存储介质包括但不限于任何类型的盘(包括软盘、硬盘、光盘、cd

rom、和磁光盘)、rom(read

only memory,只读存储器)、ram(random access memory,随即存储器)、eprom(erasable programmable read

only memory,可擦写可编程只读存储器)、eeprom(electrically erasable programmable read

only memory,电可擦可编程只读存储器)、闪存、磁性卡片或光线卡片。也就是,可读存储介质包括由设备(例如,计算机)以能够读的形式存储或传输信息的任何介质。
237.应用本技术实施例,至少具有如下有益效果:
238.第一服务端接收来自终端的第一客户端发送的登录凭证,登录凭证用于表征第一客户端通过终端上至少两个第三方的第二客户端中的任一第二客户端的登录组件进行用户登录;响应于确定登录凭证为合法,发送第一消息给任一第二客户端对应的第二服务端,以指示第二服务端根据第一消息确定访问令牌;接收第二服务端发送的访问令牌,并根据访问令牌,确定任一第二客户端的身份标识;用户在非首次登录中,第一服务端中存在用户标识与至少两个第二客户端的身份标识之间为映射关系,即该用户标识与至少两个第二客户端的账号之间均存在绑定关系;响应于确定第一服务端中存在任一用户标识与任一第二客户端的身份标识之间为映射关系,则发送登录态给第一客户端,以指示第一客户端进行用户登录;如此,在用户登录场景中实现了同时将至少两个第二客户端的账号关联到该用户的唯一的用户标识,从而降低了用户使用成本,提升了服务平台统计游戏用户数量的准确度。用户的整个账户体系以用户标识作为该用户的唯一用户标识,该用户的手机号(手机
号码)可以变,该用户的用户标识不会变,也就是说,用户的手机号发生变化不会影响用户标识,以及用户标识和至少两个第二客户端的身份标识(账号)之间的映射关系;当用户更换手机号后,没有及时解绑或换绑,即使旧手机号被其他用户注册,也不会出现该用户账户丢失的安全风险。
239.本技术实施例还提供了一种包含指令的计算机程序产品,当其在计算机设备上运行时,使得计算机设备执行上述各个方法实施例所提供的登录方法。
240.本技术领域技术人员可以理解,可以用计算机程序来实现这些结构图和/或框图和/或流图中的每个框以及这些结构图和/或框图和/或流图中的框的组合。本技术领域技术人员可以理解,可以将这些计算机程序产品提供给通用计算机、专业计算机或其他可编程数据处理方法的处理器来实现,从而通过计算机或其他可编程数据处理方法的处理器来执行本技术公开的结构图和/或框图和/或流图的框或多个框中指定的方案。
241.本技术领域技术人员可以理解,本技术中已经讨论过的各种操作、方法、流程中的步骤、措施、方案可以被交替、更改、组合或删除。进一步地,具有本技术中已经讨论过的各种操作、方法、流程中的其他步骤、措施、方案也可以被交替、更改、重排、分解、组合或删除。进一步地,现有技术中的具有与本技术中公开的各种操作、方法、流程中的步骤、措施、方案也可以被交替、更改、重排、分解、组合或删除。
242.以上所述仅是本技术的部分实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本技术原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本技术的保护范围。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献