账号打通方法、装置、存储介质以及计算机设备与流程

文档序号:31997819发布日期:2022-11-02 09:14阅读:68来源:国知局
账号打通方法、装置、存储介质以及计算机设备与流程

1.本说明书涉及计算机技术领域,具体而言,涉及一种账号打通方法、装置、存储介质和计算机设备。


背景技术:

2.随着计算机技术的蓬勃发展,出现了各种各样的应用,而每个应用又有着自己独立的账号体系,使得用户在使用不同的应用时,会针对于不同的应用输入不同的账号密码。为了减少繁琐的账号密码,会将各应用之间的账号进行打通,而账号打通是指同一用户的用户数据,在多个应用间互通共享,使得各应用均可以针对于相同的用户进行交互。


技术实现要素:

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.图12为本说明书一个或多个实施例提供的一种第二客户端的结构示意图;
51.图13为本说明书一个或多个实施例提供的一种第二客户端的结构示意图;
52.图14是本说明书一个或多个实施例提供的一种电子设备的结构示意图;
53.图15是本说明书一个或多个实施例提供的操作系统和用户空间的结构示意图;
54.图16是图14中安卓操作系统的架构图;
55.图17是图14中ios操作系统的架构图。
具体实施方式
56.为使得本说明书一个或多个实施例的特征和优点能够更加的明显和易懂,下面将结合本说明书一个或多个实施例中的附图,对本说明书一个或多个实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本说明书一个或多个实施例一部分实施例,而非全部实施例。基于本说明书中的一个或多个实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本说明书一个或多个实施例保护的范围。
57.下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本说明书一个或多个实施例相一致的所有实施方式。相反,它们仅是如所附权利要求书中所详述的、本说明书一个或多个实施例的一些方面相一致的装置和方法的例子。附图中所示的流程图仅是示例性说明,不是必须按照所示步骤执行。例如,有的步骤是并列的,在逻辑上并没有严格的先后关系,因此实际执行顺序是可变的。另外,术语“第一”、“第二”、“第三”、“第四”、“第五”、“第六”、“第七”、“第八”仅是为了区分的目的,不应作为本公开内容的限制。
58.由于现有的应用所属的服务厂商不尽相同,而各服务厂商用于提供服务的服务器的网络层和接口层的设计不同,则不同应用之间的账号打通流程也随之不同,即任意两个应用在进行账号打通时,需要先实现这两个应用对应的服务器的链路对接,因此,现有的账号打通方法对接链路过程繁琐,成本较高。同时,还由于现有的应用所采用的账号体系不同,导致任意两个应用内的账号无法有效绑定映射。
59.为了更好的提高账号打通效率,请参见图1,为本说明书一个或多个实施例提供的一种账号打通方法的交互示意图。
60.如图1所示,账号打通系统包括第一客户端10、服务器20和第二客户端30,第一客户端10、服务器20和第二客户端30均可以是各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携式计算机和台式计算机等,在此不做具体限定,进一步的,第一客户端10和第二客户端20还可以是各种应用产品。
61.第一客户端10获取第二客户端30的第二客户端信息,然后基于第一客户端10的第一客户端信息、第一客户端10的第一账号信息和第二客户端30的第二客户端信息,生成账号打通请求,再向服务器20发送所述账号打通请求。
62.服务器20基于所述第一客户端信息、所述第一账号信息和所述第二客户端信息,
生成所述账号打通请求对应的会话令牌,再将所述会话令牌返回至第一客户端10。
63.第一客户端10基于所述会话令牌、第一客户端10的第一客户端信息和第一客户端10的第一账号信息生成账号打通消息,然后向第二客户端30发送所述账号打通消息。
64.第二客户端30基于所述账号打通消息生成信息验证请求,然后将所述信息验证请求发送至服务器20。
65.服务器20基于所述第一客户端信息、所述第一账号信息和所述第二客户端信息,确定预先设置的预存会话令牌,若所述预存会话令牌与所述会话令牌一致,则确定所述会话令牌有效,然后向第二客户端30返回验证通过消息。
66.第二客户端30获取第二客户端30中处于登录状态的第三账号信息,然后基于第三账号信息生成账号绑定提示。
67.第二客户端30响应于拒绝绑定指令,向服务器20发送拒绝绑定信息。
68.第二客户端30还可以响应于确认绑定指令,将所述第三账号信息作为第二客户端30的第二账号信息,或者是响应于更换绑定指令,生成账号更换界面,基于所述账号更换界面获取第四账号信息,将所述第四账号信息作为第二客户端30的第二账号信息,然后生成包括所述第二客户端信息和所述第二账号信息的确认绑定信息,再将所述确认绑定信息发送至服务器20。
69.服务器20基于所述第一客户端信息、所述第一账号信息、所述第二客户端信息和第二账号信息,构建第一客户端10与第二客户端20的绑定关系,然后基于第一客户端10与第二客户端20的绑定关系,生成绑定信息,再向第一客户端10发送所述绑定信息。
70.第一客户端10生成携带所述绑定信息的账号数据获取请求,然后向第二客户端30发送所述账号数据获取请求。
71.第二客户端30基于所述绑定信息生成账号确定请求,然后将所述账号确定请求发送至服务器20。
72.服务器20验证所述账号确定请求中的绑定信息,若所述绑定信息无效,则向第二客户端30发送所述绑定信息无效的错误提示;若所述绑定信息有效,则基于所述绑定信息对应的绑定关系获取第二客户端30对应的第二账号信息,然后向第二客户端30发送所述第二账号信息。
73.第二客户端30获取所述第二账号信息对应的账号数据,然后向第一客户端10发送所述第二账号信息对应的账号数据。
74.第一客户端10生成会话结束通知,然后将所述会话结束通知发送至服务器20。
75.服务器20销毁所述绑定信息。
76.下面将结合图2-图7,对本说明书一个或多个实施例提供的账号打通方法进行详细介绍。
77.请参见图2,为本说明书一个或多个实施例提供了一种账号打通方法的流程示意图。如图2所示,所述方法可以包括以下步骤。
78.s102,接收所述第二客户端发送的信息验证请求,所述信息验证请求包括会话令牌、所述第一客户端的第一客户端信息、所述第一客户端的第一账号信息和所述第二客户端的第二客户端信息。
79.在一种实现方式中,信息验证请求包括会话令牌、第一客户端的第一客户端信息、
第一客户端的第一账号信息和第二客户端的第二客户端信息,其中,会话令牌、第一客户端的第一客户端信息和第一客户端的第一账号信息,均为第一客户端向第二客户端发送的第一客户端的相关信息,以使第二客户端基于前述信息判断第一客户端是否为可信客户端,则可以理解的是,可信客户端是指通过服务器认证的客户端。会话令牌(token)为服务器针对第一客户端和第二客户端生成的令牌,会话令牌为经过加密的字符串。第一客户端信息包括但不限于第一客户端的客户端标识和客户端名称,第一客户端信息还可以是任意用于确定第一客户端的指示信息。同样的,第二客户端信息包括但不限于第二客户端的客户端标识和客户端名称,第二客户端信息还可以是任意用于确定第二客户端的指示信息。第一账号信息为第一客户端中,需要与其它账号进行账号打通的账号的相关信息,第一账号信息包括但不限于账号标识、账号名称。需要强调的是,第一客户端是发起账号打通请求的客户端,第二客户端为接收账号打通请求的客户端,第一客户端和第二客户端可以是不同电子设备内的不同应用,也可以是同一电子设备内的不同应用。
80.服务器接收第二客户端发送的信息验证请求,然后在信息验证请求中获取会话令牌、第一客户端的第一客户端信息、第一客户端的第一账号信息和第二客户端的第二客户端信息。
81.s104,基于所述第一客户端信息、所述第一账号信息和所述第二客户端信息,验证所述会话令牌有效,并向所述第二客户端返回验证通过消息。
82.在一种实现方式中,会话令牌(token)为临时性的,也因此,在会话令牌有效时,第一客户端向第二客户端发送的信息才为有效信息。验证通过消息指示信息验证请求所携带的信息为有效信息。
83.服务器基于第一客户端信息、第一账号信息和第二客户端信息,获取前述信息相对应的预存会话令牌,该预存会话令牌为服务器针对第一客户端信息、第一账号信息和第二客户端信息生成的,处于有效状态的会话令牌,然后基于预存会话令牌,判断信息验证请求中的会话令牌是否为有效的会话令牌,即判断会话令牌是否处于有效状态,并在判定会话令牌有效时,生成验证通过消息,然后将验证通过消息返回至第二客户端。
84.服务器在未获取到第一客户端信息、第一账号信息和第二客户端信息对应的预存会话令牌时,判定信息验证请求中的会话令牌为无效的会话令牌,生成验证失败消息,然后将验证失败消息返回至第二客户端。
85.服务器在基于预存会话令牌,判定信息验证请求中的会话令牌无效的会话令牌时,生成验证失败消息,然后将验证失败消息返回至第二客户端,其中,验证失败消息用于指示信息验证请求所携带的信息为无效信息,可以理解的是,第二客户端可以基于该验证失败消息拒绝与第一客户端进行账号打通。
86.s106,接收所述第二客户端发送的确认绑定信息,所述确认绑定信息包括所述第二客户端的第二客户端信息和所述第二客户端的第二账号信息。
87.在一种实现方式中,确认绑定信息包括会话令牌、第二客户端的第二客户端信息和第二客户端的第二账号信息,用于指示第二客户端确认与第一客户端进行账号打通。第二账号信息为第二客户端中,确认与第一账号信息对应的第一账号进行账号打通的账号的相关信息,第二账号信息包括但不限于账号标识、账号名称。
88.服务器接收第二客户端发送的确认绑定信息,然后在确认绑定信息中获取第二客
户端的第二客户端信息和第二账号信息。
89.s108,基于所述第一客户端信息、所述第一账号信息、所述第二客户端信息和第二账号信息,构建所述第一客户端与第二客户端的绑定关系,以使所述第一客户端基于所述绑定关系获取所述第二客户端的第二账号信息对应的账号数据。
90.在一种实现方式中,服务器基于第二客户端的第二客户端信息,在服务器的存储介质中获取会话令牌对应的第一客户端信息和第一账号信息,可以理解的是,服务器会将第一客户端信息、第一账号信息、第二客户端信息和预存会话令牌关联存储在存储介质中。
91.服务器建立第一客户端信息和第二客户端信息的第一映射关系,建立第一账号信息与第二账号信息的第二映射关系,其中,第一映射关系和第二映射关系共同构成第一客户端与第二客户端的绑定关系,第一客户端可以基于该绑定关系获取第二客户端的第二账号信息对应的账号数据。
92.在本说明书一个或多个实施例中,通过服务器为第一客户端和第二客户端提供账号打通服务,具体来说,服务器是通过验证第二客户端发送的信息验证请求,以使第二客户端接收到验证通过消息后,向服务器发送确定绑定消息,服务器再基于第二客户端发送的确认绑定信息,构建第一客户端与第二客户端之间的绑定关系,以使第一客户端基于绑定关系获取第二客户端的第二账号信息对应的账号数据,则可以理解的是,该账号打通流程是服务器所提供的标准化流程,也是服务器所提供的一个通用流程,该流程无需考虑第一客户端与第二客户端所采用的账号体系,更无需考虑第一客户端与第二客户端的链路设计,从而无需针对于第一客户端和第二客户端设计对应的账户打通流程,进而提高了账号打通效率。
93.请参见图3,为本说明书一个或多个实施例提供了一种账号打通方法的流程示意图。如图3所示,所述方法可以包括以下步骤。
94.s201,接收所述第一客户端发送的账号打通请求,所述账号打通申请包括所述第一客户端的第一客户端信息、所述第一客户端的第一账号信息和所述第二客户端的第二客户端信息。
95.在一种实现方式中,账号打通请求包括第一客户端的第一客户端信息、第一客户端的第一账号信息和所述第二客户端的第二客户端信息。第一客户端信息包括但不限于第一客户端的客户端标识和客户端名称,第一客户端信息还可以是任意用于确定第一客户端的指示信息。同样的,第二客户端信息包括但不限于第二客户端的客户端标识和客户端名称,第二客户端信息还可以是任意用于确定第二客户端的指示信息。第一账号信息包括但不限于账号标识、账号名称。
96.服务器接收第一客户端发送的账号打通请求,在账号打通请求中获取第一客户端的第一客户端信息、第一客户端的第一账号信息和第二客户端的第二客户端信息。
97.在一种实现方式中,第一客户端信息是服务器针对第一客户端生成的注册标识。具体来说,第一客户端向服务器发送客户端注册请求时,服务器会基于该客户端注册请求生成第一客户端信息,然后将该第一客户端信息返回至第一客户端,其中,客户端注册请求中携带有第一客户端的相关信息,该信息包括但不限于第一客户端的客户端标识、客户端属性、客户端版本、客户端名称,则服务器是基于客户端注册请求中携带的第一客户端的相关信息生成第一客户端的注册标识。同样的,服务器也是基于同样的注册过程,生成第二客
户端的第二客户端信息,并返回至第二客户端。进一步的,服务器还可以基于客户端注册请求中携带的信息,判断服务器是否支持该客户端的账号打通请求,即是否可以为该客户端提供账号打通服务,并在确定可以为该客户端提供账号打通服务时,执行前述的客户端注册流程。
98.可选的,服务器在执行客户端注册流程时,还会针对于该客户端生成通信密钥,以使客户端与服务器的通信过程中,都会基于该通信密钥进行加密通信。
99.则可以理解的是,在当前实现方式中,服务器在接收到账号打通请求后,基于账号打通请求中的第一客户端信息验证第一客户端是否为注册客户端,即服务器中是否存在第一客户端的注册信息(即第一客户端信息),同样的,还会基于账号打通请求中的第二客户端信息验证第二客户端是否为注册客户端,在第一客户端和第二客户端均为注册客户端时,执行后续的账号打通流程。
100.s203,基于所述第一客户端信息、所述第一账号信息和所述第二客户端信息,生成所述账号打通请求对应的会话令牌。
101.在一种实现方式中,会话令牌(token)为服务器针对第一客户端和第二客户端生成的令牌,会话令牌为经过加密的字符串。
102.服务器基于第一客户端信息、第一账号信息和第二客户端信息生成会话令牌,然后将会话令牌和第一客户端信息、第一账号信息和第二客户端信息关联存储。
103.在一种实现方式中,服务器在接收到账号打通请求后,按照设定令牌生成算法生成一个加密字符串,然后将该加密字符串作为第一客户端信息、第一账号信息和第二客户端信息相对应的会话令牌,再将将会话令牌和第一客户端信息、第一账号信息和第二客户端信息关联存储。
104.s205,将所述会话令牌返回至所述第一客户端,以使所述第一客户端向所述第二客户端发送携带所述会话令牌的账号打通消息,所述第二客户端基于所述账号打通消息向所述服务器发送信息验证请求。
105.在一种实现方式中,服务器将会话令牌返回至发送账号打通请求的第一客户端。可以理解的是,第一客户端接收到会话令牌后,可以判定服务器支持第一客户端与和第二客户端之间的账号打通服务,然后基于该会话令牌向第二客户端发送账号打通消息,从而使得第二客户端可以基于账号打通消息进入账号打通流程,即向服务器发送信息验证请求。
106.服务器通过生成第一客户端与第二客户端对应的会话令牌,使得第二客户端可以基于该会话令牌对第一客户端进行验证,以在验证通过后才进行与第一客户端进行账号打通操作,避免了账号数据流向恶意客户端中,从而提高了账号打通流程的安全性。
107.s207,接收所述第二客户端发送的信息验证请求,所述信息验证请求包括会话令牌、所述第一客户端的第一客户端信息、所述第一客户端的第一账号信息和所述第二客户端的第二客户端信息。
108.具体可参见步骤s102,在此不再赘述。
109.s209,基于所述第一客户端信息、所述第一账号信息和所述第二客户端信息,确定预先设置的预存会话令牌。
110.在一种实现方式中,预存会话令牌为服务器基于第一客户端发送的账号打通请求
生成的会话令牌,该会话令牌与第一客户端信息、第一账号信息和第二客户端信息关联存储在服务器的存储介质中。可选的,会话令牌、第一客户端信息、第一账号信息和第二客户端信息可以做为一组数据,存储在服务器的会话令牌数据库中。
111.服务器基于第一客户端信息、第一账号信息和第二客户端信息,在存储介质中确定与前述信息对应的预存会话令牌,然后在存储介质中获取该预存会话令牌,再比较信息验证请求中的会话令牌和预存会话令牌。则可以理解的是,第一客户端信息、第一账号信息和第二客户端信息,分别与该预存会话令牌对应的预存第一客户端信息、预存第一账号信息和预存第二客户端信息一致。
112.服务器在未获取到第一客户端信息、第一账号信息和第二客户端信息对应的预存会话令牌时,即服务器的存储介质中不存在与第一客户端信息、第一账号信息和第二客户端信息三者相关联的预存会话令牌,判定信息验证请求中的会话令牌为无效的会话令牌,生成验证失败消息,然后将验证失败消息返回至第二客户端,其中,验证失败消息用于指示信息验证请求所携带的信息为无效信息,可以理解的是,第二客户端可以基于该验证失败消息拒绝与第一客户端进行账号打通。
113.s211,若所述预存会话令牌与所述会话令牌一致,则确定所述会话令牌有效,并向所述第二客户端返回验证通过消息。
114.在一种实现方式中,会话令牌(token)为临时性的,也因此,在会话令牌有效时,第一客户端向第二客户端发送的信息才为有效信息。验证通过消息指示信息验证请求所携带的信息为有效信息。
115.服务器在判定预存会话令牌与信息验证请求中的会话令牌一致时,确定该会话令牌为有效的会话令牌,然后生成针对于该会话令牌验证通过消息,并将验证通过消息返回至第二客户端中。
116.服务器在判定预存会话令牌与信息验证请求中的会话令牌不一致时,确定该会话令牌为无效的会话令牌,然后生成针对于该会话令牌验证失败消息,并将验证失败消息返回至第二客户端中,其中,验证失败消息用于指示信息验证请求所携带的信息为无效信息,可以理解的是,第二客户端可以基于该验证失败消息拒绝与第一客户端进行账号打通。
117.通过获取信息验证请求对应的预存会话令牌,然后基于该预存会话令牌,验证信息验证请求中的会话令牌是否为有效,并将会话令牌的验证结果返回至第二客户端,以使第二客户端基于会话令牌的判断结果,确定发送账号打通消息的第一客户端的合法性,以第一客户端为合法的客户端时,才进行账号打通操作,避免了账号数据流向恶意客户端中,从而提高了账号打通流程的安全性。
118.s213,接收所述第二客户端发送的确认绑定信息,所述确认绑定信息包括所述第二客户端的第二客户端信息和所述第二客户端的第二账号信息。
119.具体可参见步骤s106,在此不再赘述。
120.s215,基于所述第一客户端信息、所述第一账号信息、所述第二客户端信息和第二账号信息,构建所述第一客户端与第二客户端的绑定关系,以使所述第一客户端基于所述绑定关系获取所述第二客户端的第二账号信息对应的账号数据。
121.具体可参见步骤s108,在此不再赘述。
122.s217,基于所述第一客户端与所述第二客户端的绑定关系,生成绑定信息。
123.在一种实现方式中,服务器基于第一客户端信息和第二客户端信息之间的第一映射关系,以及第一账号信息和第二账号信息之间的第二映射关系,生成针对第一客户端和第二客户端的绑定信息,该绑定信息(session)是一个加密字符串,用于指示第一客户端与第二客户端的绑定关系。
124.s219,向所述第一客户端发送所述绑定信息,以使所述第一客户端基于所述绑定信息向所述第二客户端发送账号数据获取请求。
125.在一种实现方式中,服务器向第一客户端发送绑定信息,以使第一客户端基于绑定信息向第二客户端发送账号数据获取请求,可以理解的是,该账号数据获取请求用于请求第二账号信息对应的账号数据,且第二账号信息为绑定信息对应的绑定关系中的第二账号信息。
126.可选的,服务器还可以向第二客户端发送绑定信息,以使第二客户端基于绑定信息向第一客户端发起账号打通流程的相关通信。
127.s221,接收所述第二客户端发送的账号确定请求,所述账号确定请求包括所述绑定信息。
128.在一种实现方式中,账号确定请求包括绑定信息,该账号确定请求用于确定第一客户端发送的账号数据获取请求是否为合法请求。
129.服务器接收第二客户端发送的账号确定请求,然后在账号确定请求中获取绑定信息。
130.s223,基于所述绑定信息对应的绑定关系获取所述第二客户端对应的第二账号信息。
131.在一种实现方式中,服务器基于账号确定请求中的绑定信息,确定该绑定信息对应的绑定关系,然后获取基于该绑定关系中的第二映射关系,获取第二账号信息,则可以理解的是,第二账号信息是指绑定关系中的第一映射关系的第二客户端对应的第二账号信息。
132.进一步的,若不存在绑定信息对应的绑定关系,则生成绑定信息不存在的错误提示,并将绑定信息不存在的错误提示返回至第二客户端,以使第二客户端基于该错误提示,判定第一客户端发送的账号数据获取请求为非法请求,进而拒绝向第一客户端发送第二账号信息对应的账号数据。
133.在一种实现方式中,所述基于所述绑定信息对应的绑定关系获取所述第二客户端对应的第二账号信息,包括:
134.验证所述账号确定请求中的绑定信息;
135.若所述绑定信息有效,则基于所述绑定信息对应的绑定关系获取所述第二客户端对应的第二账号信息;
136.若所述绑定信息无效,则向所述第二客户端发送所述绑定信息无效的错误提示。
137.服务器基于账号确定请求中的绑定信息,判断该绑定信息是否为处于有效状态,可以理解的是,服务器在针对于第一客户端与第二客户端生成绑定信息之后,会基于该绑定信息设置信息状态,该信息状态包括有效状态和无效状态。当绑定信息处于有效状态时,绑定信息有效,且与绑定信息对应的绑定关系也有效;当绑定信息处于无效状态时,绑定信息无效,但与绑定信息对应的绑定关系可以有效,也可以无效。则可以理解的是,绑定信息
是否有效,仅用于指示第一客户端是否可以基于该有效信息向第二客户端请求账号数据,并不指示第一客户端与第二客户端的绑定关系是否存续。
138.服务器在绑定信息有效时,确定该绑定信息对应的绑定关系,然后获取基于该绑定关系中的第二映射关系,获取第二账号信息,则可以理解的是,第二账号信息是指绑定关系中的第一映射关系的第二客户端对应的第二账号信息。
139.服务器在绑定信息无效时,生成绑定信息无效的错误提示,并将绑定信息无效的错误提示返回至第二客户端,以使第二客户端基于该错误提示,判定第一客户端发送的账号数据获取请求为非法请求,进而拒绝向第一客户端发送第二账号信息对应的账号数据。
140.通过判断绑定信息是否有效,然后基于绑定信息的判断结果,将第二账号信息或错误信息返回至第二客户端,以使第二客户端基于接收到第二账号信息时,认定绑定信息有效,进而继续进行账号打通操作,还可以基于接收到的错误信息,拒绝与绑定信息的发送端(第一客户端)进行账号打通,避免了账号数据流向恶意客户端中,从而提高了账号打通流程的安全性。
141.可选的,在一种实现方式中,若服务器中已经存在第一客户端信息与第二客户端信息、第一账号信息与第二账号信息对应的绑定关系,则服务器可以直接基于第一客户端发送的账号打通申请生成新的绑定信息,然后将绑定信息返回至第一客户端中,以使第一客户端直接基于该绑定信息向第二客户端发送账号数据获取请求,无需重复执行前述的账号绑定过程。需要强调的是,该绑定信息处于有效状态,且该账号打通申请中携带第一客户端信息、第一账号信息、第二客户端信息和第二账号信息。
142.s225,向所述第二客户端发送所述第二账号信息,以使所述第二客户端获取所述第二账号信息对应的账号数据,并将所述账号数据返回至所述第一客户端。
143.在一种实现方式中,服务器向第二客户端发送第二账号信息,以使第二客户端基于接收到的第二账号信息,获取第二账号信息对应的账号数据,然后将获取到的账号数据返回至第一客户端。
144.由于第二客户端中存在一个或多个账号及其产生的账号数据,则仅基于绑定信息无法认定第一客户端所请求的账号数据,是否为通过三方绑定确认的账号所产生的账号数据,因此通过获取绑定信息对应的第二账号信息,然后将该第二账号信息发送至第二客户端,以使第二客户端基于接收到第二账号信息获取并返回相应的账号数据,避免了非绑定账号的账号数据的非法流出,减少了非绑定账号的信息泄露问题,提高了账号打通流程的安全性。
145.s227,接收所述第一客户端发送的会话结束通知,所述会话结束通知包括所述绑定信息。
146.在一种实现方式中,会话结束通知包括绑定信息。
147.服务器接收第一客户端发送的会话结束通知,然后在会话结束通知中获取绑定信息。需要强调的是,会话结束通知仅用于结束当前的账号打通流程,并不意味着基于前述基于账号打通流程产生的绑定关系也随之结束。
148.s229,销毁所述绑定信息,以使所述绑定信息无效。
149.在一种实现方式中,服务器基于会话结束通知中的绑定信息,确定与该绑定信息对应的预存绑定信息和预存绑定关系,将该预存绑定关系对应的预存绑定关系删除,或将
该预存绑定信息设置为无效绑定信息,使得与绑定信息对应的预存绑定信息无效。
150.通过销毁绑定信息,使得绑定信息仅在有限时间内有效,避免第一客户端在未经第二客户端允许的情况下,反复凭借绑定信息持续获取绑定信息对应的账号数据,造成账号数据泄露的问题,提高了账号打通流程的安全性。
151.请参见图4,为本说明书一个或多个实施例提供了一种账号打通方法的流程示意图。如图4所示,所述方法可以包括以下步骤。
152.s302,接收所述服务器发送的会话令牌,基于所述会话令牌、所述第一客户端的第一客户端信息和所述第一客户端的第一账号信息生成账号打通消息。
153.在一种实现方式中,会话令牌(token)为服务器针对第一客户端和第二客户端生成的令牌,会话令牌为经过加密的字符串。第一客户端信息包括但不限于第一客户端的客户端标识和客户端名称,第一客户端信息还可以是任意用于确定第一客户端的指示信息。第一账号信息为第一客户端中,需要与其它账号进行账号打通的账号的相关信息,第一账号信息包括但不限于账号标识、账号名称。需要强调的是,第一客户端是发起账号打通请求的客户端,第二客户端为接收账号打通请求的客户端,第一客户端和第二客户端可以是不同电子设备内的不同应用,也可以是同一电子设备内的不同应用。账号打通消息包括会话令牌、第一客户端信息和第一账号信息,可以理解的是,会话令牌用于确认第一客户端的合法身份,第一客户端信息用于确定账号所属客户端主体,第一账号信息用于确定需要进行账号打通的其中一方账号,即相互账号打通的多个账号中的一个。
154.第一客户端接收服务器发送的会话令牌,然后获取第一客户端的第一客户端信息和第一账号信息,可以理解的是,第一账号信息为第一客户端的多个账号中,需要进行账号绑定的第一账号的账号信息,再基于会话令牌、第一客户端信息和第一账号信息的账号打通消息。
155.s304,向所述第二客户端发送所述账号打通消息,以使所述第二客户端基于所述账号打通消息确定与所述第一客户端构建绑定关系。
156.在一种实现方式中,第一客户端向第二客户端发送账号打通消息,以使第二客户端接收到账号打通信息后,基于账号打通信息中携带的会话令牌、第一客户端信息和第一账号信息,验证会话令牌的合法性,进而在判定会话令牌合法后,才向服务器发送用于构建绑定关系的相关信息,以实现绑定关系的构建。
157.s306,若所述服务器存在所述第一客户端与所述第二客户端的绑定关系,则基于所述绑定关系,向所述第二客户端发送账号数据获取请求。
158.在一种实现方式中,第一客户端与第二客户端的绑定关系包括:第一客户端信息与第二客户端信息之间的第一映射关系,第一账号信息与第二账号信息之间的第二映射关系。进一步的,账号数据获取请求用于请求第二账号信息对应的账号数据。
159.第一客户端在确定服务器中存在第一客户端与第二客户端的绑定关系时,基于绑定关系对应的第二账号信息,生成携带第二账号信息的账号数据获取请求,并将账号数据获取请求发送至第二客户端,以使第二客户端基于账号数据获取请求中携带的第二账号信息,获取第二账号信息对应的账号数据,然后将该账号数据返回至第一客户端。
160.s308,接收所述第二客户端发送的账号数据。
161.在一种实现方式中,第一客户端接收第二客户端发送的账号数据,然后将第二账
号信息对应的账号数据作为与第一账号信息相关联的账号数据进行存储,从而实现第一账号信息对应的第一账号与第二账号信息对应的第二账号之间的账号互通。
162.在本说明书一个或多个实施例中,通过获取服务器发放的会话令牌,然后基于该会话令牌生成账号打通信息,以使第二客户端可以基于账号打通信息中的会话令牌对第一客户端进行身份验证,并在验证通过后,由服务器构建第一客户端与第二客户端之间的绑定关系,则第一客户端可以基于绑定关系获取第二客户端的第二账号信息对应的账号数据,则可以理解的是,服务器为第一客户端和第二客户端提供了一个标准化的账号打通流程和通用流程,使得第一客户端无需考虑第二客户端所采用的账号体系,也无需考虑第二客户端的链路设计,更无需针对于第二客户端设计对应的账户打通流程,即可与第二客户端进行账号打通,进而提高了账号打通效率。
163.请参见图5,为本说明书一个或多个实施例提供了一种账号打通方法的流程示意图。如图5所示,所述方法可以包括以下步骤。
164.s401,获取所述第二客户端的第二客户端信息。
165.在一种实现方式中,第一客户端响应于账号打通指令,获取第二客户端的第二客户端信息,可以理解的是,账号打通指令携带第二客户端信息,第二客户端信息为用户选中的目标客户端的客户端信息,账号打通指令为用户触发的控制指令。
166.s403,基于所述第一客户端的第一客户端信息、所述第一客户端的第一账号信息和所述第二客户端的第二客户端信息,生成账号打通请求。
167.在一种实现方式中,账号打通请求中携带第一客户端的第一客户端信息、第一客户端的第一账号信息和第二客户端的第二客户端信息。第一客户端信息包括但不限于第一客户端的客户端标识和客户端名称,第一客户端信息还可以是任意用于确定第一客户端的指示信息。同样的,第二客户端信息包括但不限于第二客户端的客户端标识和客户端名称,第二客户端信息还可以是任意用于确定第二客户端的指示信息。第一账号信息包括但不限于账号标识、账号名称。
168.第一客户端获取第一客户端的第一客户端信息,并在第一客户端的多个账号中,确定需要进行账号绑定的第一账号,获取第一账号的第一账号信息,然后基于第一客户端信息、第一账号信息和第二客户端信息生成账号打通请求。
169.s405,向所述服务器发送所述账号打通请求,以使所述服务器基于所述账号打通请求生成会话令牌,并将所述会话令牌返回至所述第一客户端。
170.在一种实现方式中,会话令牌(token)为服务器针对第一客户端和第二客户端生成的令牌,会话令牌为经过加密的字符串,会话令牌为第二客户端对第一客户端进行身份验证的验证依据。
171.第一客户端向服务器发送账号打通请求,以使服务器基于账号打通请求中的相关信息,生成针对第一客户端和第二客户端的会话令牌,并对该会话令牌进行加密,再将加密后的会话令牌返回至第一客户端中。
172.在一种实现方式中,第一客户端信息是服务器针对第一客户端生成的注册标识。具体来说,第一客户端向服务器发送客户端注册请求时,服务器会基于该客户端注册请求生成第一客户端信息,然后将该第一客户端信息返回至第一客户端,其中,客户端注册请求中携带有第一客户端的相关信息,该信息包括但不限于第一客户端的客户端标识、客户端
属性、客户端版本、客户端名称,则服务器是基于客户端注册请求中携带的第一客户端的相关信息生成第一客户端的注册标识。同样的,服务器也是基于同样的注册过程,生成第二客户端的第二客户端信息,并返回至第二客户端。进一步的,服务器还可以基于客户端注册请求中携带的信息,判断服务器是否支持该客户端的账号打通请求,即是否可以为该客户端提供账号打通服务,并在确定可以为该客户端提供账号打通服务时,执行前述的客户端注册流程。
173.可选的,服务器在执行客户端注册流程时,还会针对于该客户端生成通信密钥,以使客户端与服务器的通信过程中,都会基于该通信密钥进行加密通信。则可以理解的是,第一客户端在服务器进行通信时,需要基于通信密钥进行信息加密。示例性的,第一客户端在生成账号打通请求后,会基于通信密钥对账号打通请求进行加密,然后将加密后的账号打通请求发送至服务器。
174.通过生成账号打通请求,再将账号打通请求发送至服务器中,以获取服务器针对第一客户端和第二客户端生成的会话令牌,使得第一客户端通过该会话令牌证明自身的合法性,避免了账号数据流向恶意客户端中,从而提高了账号打通流程的安全性。
175.s407,接收所述服务器发送的会话令牌,基于所述会话令牌、所述第一客户端的第一客户端信息和所述第一客户端的第一账号信息生成账号打通消息。
176.具体可参见步骤s302,在此不再赘述。
177.s409,向所述第二客户端发送所述账号打通消息,以使所述第二客户端基于所述账号打通消息确定与所述第一客户端构建绑定关系。
178.具体可参见步骤s304,在此不再赘述。
179.s411,接收所述服务器发送的绑定信息。
180.在一种实现方式中,绑定信息(session)是一个加密字符串,用于指示第一客户端与第二客户端的绑定关系,其中,第一客户端与第二客户端的绑定关系包括第一客户端信息与第二客户端信息之间的第一映射关系,第一账号信息和第二账号信息之间的第二映射关系。
181.第一客户端接收服务器发送的绑定信息,判定服务器中存在第一客户端与第二客户端之间的绑定关系。
182.s413,生成携带所述绑定信息的账号数据获取请求。
183.在一种实现方式中,账号数据获取请求包括绑定信息,账号数据获取请求用于请求第二账号信息对应的账号数据,且第二账号信息为绑定信息对应的绑定关系中的第二账号信息。
184.第一客户端基于接收到的绑定信息,生成携带绑定信息的账号数据获取请求。
185.s415,向所述第二客户端发送所述账号数据获取请求,以使所述第二客户端获取所述账号数据获取请求对应的账号数据,并将所述账号数据返回至所述第一客户端。
186.在一种实现方式中,第一客户端向第二客户端发送账号数据获取请求,以使第二客户端基于账号数据获取请求中的绑定信息,确定第一客户端的合法身份,并确定绑定信息对应的第二账号信息,然后获取第二账号信息对应的账号数据,再返回至第一客户端。
187.通过获取第一客户端与第二客户端的绑定关系对应的绑定信息,得到针对该绑定关系的合法凭证,即绑定信息,然后基于该绑定信息获取相对应的账号数据,避免了非绑定
账号的账号数据的非法流出,减少了非绑定账号的信息泄露问题,提高了账号打通流程的安全性。
188.s417,接收所述第二客户端发送的账号数据。
189.具体可参见步骤s308,在此不再赘述。
190.s419,生成会话结束通知,所述会话结束通知包括所述绑定信息。
191.在一种实现方式中,会话结束通知包括绑定信息。需要强调的是,会话结束通知仅用于结束当前的账号打通流程,并不意味着基于前述基于账号打通流程产生的绑定关系也随之结束。
192.第一客户端在接收到第二客户端发送的账号数据后,判定第一账号信息对应的第一账号与第二账号信息对应的第二账号之间的账号互通已实现,进而基于绑定信息生成会话结束通知。
193.s421,将所述会话结束通知发送至所述服务器。
194.在一种实现方式中,第一客户端将会话结束通知发送至服务器,以使服务器基于会话结束通知中的绑定信息,将绑定信息对应的预存绑定信息销毁,使得该绑定信息无效。
195.通过销毁绑定信息,使得绑定信息仅在有限时间内有效,避免第一客户端在未经第二客户端允许的情况下,反复凭借绑定信息持续获取绑定信息对应的账号数据,造成账号数据泄露的问题,提高了账号打通流程的安全性。
196.请参见图6,为本说明书一个或多个实施例提供了一种账号打通方法的流程示意图。如图6所示,所述方法可以包括以下步骤。
197.s502,接收所述第一客户端发送的账号打通消息,基于所述账号打通消息生成信息验证请求,所述账号打通消息包括会话令牌、所述第一客户端的第一客户端信息和所述第一客户端的第一账号信息,所述信息验证请求包括所述账号打通消息和所述第二客户端的第二客户端信息。
198.在一种实现方式中,账号打通消息包括会话令牌、第一客户端的第一客户端信息和第一客户端的第一账号信息,会话令牌(token)为服务器针对第一客户端和第二客户端生成的令牌,会话令牌为经过加密的字符串。第一客户端信息包括但不限于第一客户端的客户端标识和客户端名称,第一客户端信息还可以是任意用于确定第一客户端的指示信息。第一账号信息为第一客户端中,需要与其它账号进行账号打通的账号的相关信息,第一账号信息包括但不限于账号标识、账号名称。需要强调的是,第一客户端是发起账号打通请求的客户端,第二客户端为接收账号打通请求的客户端,第一客户端和第二客户端可以是不同电子设备内的不同应用,也可以是同一电子设备内的不同应用。可以理解的是,会话令牌用于确认第一客户端的合法身份,第一客户端信息用于确定账号所属客户端主体,第一账号信息用于确定需要进行账号打通的其中一方账号,即相互账号打通的多个账号中的一个。
199.信息验证请求包括账号打通消息和第二客户端的第二客户端信息。信息验证请求用于验证第一客户端的合法身份。第二客户端信息包括但不限于第二客户端的客户端标识和客户端名称,第二客户端信息还可以是任意用于确定第二客户端的指示信息。
200.第二客户端接收第一客户端发送的账号打通请求,然后获取账号打通请求中的会话令牌、第一客户端信息和第一账号信息,并获取第二客户端中的第二客户端信息,然后基
于会话令牌、第一客户端信息、第一账号信息和第二客户端信息生成信息验证请求。
201.s504,将所述信息验证请求发送至所述服务器,以使所述服务器基于所述第一客户端信息、所述第一账号信息和所述第二客户端信息,验证所述会话令牌是否有效。
202.在一种实现方式中,会话令牌(token)为临时性的,也因此,在会话令牌有效时,第一客户端向第二客户端发送的信息才为有效信息。验证通过消息指示信息验证请求所携带的信息为有效信息。
203.第二客户端将信息验证请求发送至服务器,以使服务器基于第一客户端信息、第一账号信息和第二客户端信息,确定与之相对应的预存会话令牌,然后根据预存会话令牌验证会话令牌是否有效,并将验证结果返回至第二客户端。
204.s506,若接收到所述服务器发送的验证通过消息,则获取所述第二客户端的第二账号信息。
205.在一种实现方式中,第二客户端若接收到服务器发送的验证通过消息,则判定第一客户端为合法客户端,且第一客户端发送的账号打通消息可信,然后在第二客户端的多个账号中,确定需要进行账号打通的第二账号,然后获取第二账号的第二账号信息。
206.s508,生成包括所述第二客户端信息和所述第二账号信息的确认绑定信息,并将所述确认绑定信息发送至所述服务器,以使所述服务器构建所述第一客户端与第二客户端的绑定关系,所述第一客户端基于所述绑定关系获取所述第二客户端的第二账号信息对应的账号数据。
207.在一种实现方式中,确认绑定信息包括会话令牌、第二客户端信息和第二账号信息,用于指示第二客户端确认与第一客户端进行账号打通。第一客户端与第二客户端的绑定关系包括第一客户端信息和第二客户端信息之间的第一映射关系,第一账号信息和第二账号信息之间的第二映射关系。
208.第二客户端基于第二客户端信息、第二账号信息和会话令牌,生成确认绑定信息,然后将确认绑定信息发送至服务器,以使服务器基于确认绑定信息中的会话令牌,获取会话令牌对应的第一客户端信息和第一账号信息,再基于第一客户端信息、第一账号信息以及确认绑定信息中的第二客户端信息和第二账号信息构建第一客户端与第二客户端的绑定关系,进而使得第一客户端可以基于该绑定关系获取第二客户端的第二账号信息对应的账号数据。
209.在本说明书一个或多个实施例中,通过向服务器发送信息验证请求,以通过服务器验证第一客户端的合法身份,以在第一客户端合法时,生成确认绑定信息,以通过服务器构建第一客户端与第二客户端之间的绑定关系,则第一客户端可以基于绑定关系获取第二客户端的第二账号信息对应的账号数据,则可以理解的是,服务器为第一客户端和第二客户端提供了一个标准化的账号打通流程和通用流程,使得第二客户端无需考虑第一客户端所采用的账号体系,也无需考虑第一客户端的链路设计,更无需针对于第一客户端设计对应的账户打通流程,即可与第一客户端进行账号打通,进而提高了账号打通效率。
210.请参见图7,为本说明书一个或多个实施例提供了一种账号打通方法的流程示意图。如图7所示,所述方法可以包括以下步骤。
211.s601,接收所述第一客户端发送的账号打通消息,基于所述账号打通消息生成信息验证请求,所述账号打通消息包括会话令牌、所述第一客户端的第一客户端信息和所述
第一客户端的第一账号信息,所述信息验证请求包括所述账号打通消息和所述第二客户端的第二客户端信息。
212.在一种实现方式中,账号打通消息包括会话令牌、第一客户端的第一客户端信息和第一客户端的第一账号信息,会话令牌(token)为服务器针对第一客户端和第二客户端生成的令牌,会话令牌为经过加密的字符串。第一客户端信息包括但不限于第一客户端的客户端标识和客户端名称,第一客户端信息还可以是任意用于确定第一客户端的指示信息。第一账号信息为第一客户端中,需要与其它账号进行账号打通的账号的相关信息,第一账号信息包括但不限于账号标识、账号名称。需要强调的是,第一客户端是发起账号打通请求的客户端,第二客户端为接收账号打通请求的客户端,第一客户端和第二客户端可以是不同电子设备内的不同应用,也可以是同一电子设备内的不同应用。可以理解的是,会话令牌用于确认第一客户端的合法身份,第一客户端信息用于确定账号所属客户端主体,第一账号信息用于确定需要进行账号打通的其中一方账号,即相互账号打通的多个账号中的一个。
213.信息验证请求包括账号打通消息和第二客户端的第二客户端信息。信息验证请求用于验证第一客户端的合法身份。第二客户端信息包括但不限于第二客户端的客户端标识和客户端名称,第二客户端信息还可以是任意用于确定第二客户端的指示信息。
214.第二客户端接收第一客户端发送的账号打通请求,然后获取账号打通请求中的会话令牌、第一客户端信息和第一账号信息,并获取第二客户端中的第二客户端信息,然后基于会话令牌、第一客户端信息、第一账号信息和第二客户端信息生成信息验证请求。
215.在一种实现方式中,第一客户端信息是服务器针对第一客户端生成的注册标识。具体来说,第一客户端向服务器发送客户端注册请求时,服务器会基于该客户端注册请求生成第一客户端信息,然后将该第一客户端信息返回至第一客户端,其中,客户端注册请求中携带有第一客户端的相关信息,该信息包括但不限于第一客户端的客户端标识、客户端属性、客户端版本、客户端名称,则服务器是基于客户端注册请求中携带的第一客户端的相关信息生成第一客户端的注册标识。同样的,服务器也是基于同样的注册过程,生成第二客户端的第二客户端信息,并返回至第二客户端。进一步的,服务器还可以基于客户端注册请求中携带的信息,判断服务器是否支持该客户端的账号打通请求,即是否可以为该客户端提供账号打通服务,并在确定可以为该客户端提供账号打通服务时,执行前述的客户端注册流程。
216.可选的,服务器在执行客户端注册流程时,还会针对于该客户端生成通信密钥,以使客户端与服务器的通信过程中,都会基于该通信密钥进行加密通信。则可以理解的是,第二客户端在服务器进行通信时,需要基于通信密钥进行信息加密。示例性的,第二客户端在生成信息验证请求后,会基于通信密钥对信息验证请求进行加密,然后将加密后的信息验证请求发送至服务器。
217.s603,将所述信息验证请求发送至所述服务器,以使所述服务器基于所述第一客户端信息、所述第一账号信息和所述第二客户端信息,验证所述会话令牌是否有效。
218.具体可参见步骤s504,在此不再赘述。
219.s605,若接收到所述服务器发送的验证通过消息,则获取所述第二客户端中处于登录状态的第三账号信息。
220.在一种实现方式中,第二客户端若接收到服务器发送的验证通过消息,则判定第一客户端为合法客户端,且第一客户端发送的账号打通消息可信,然后在第二客户端的多个账号中,确定处于登录状态的第三账号,然后获取第三账号的第三账号信息。
221.s607,基于所述第三账号信息生成账号绑定提示。
222.在一种实现方式中,第二客户端基于第三账号信息生成账号绑定提示,然后将账号绑定提示输出在账号绑定界面中,以使用户基于账号绑定界面进行账号绑定选择,并触发相对应的账号绑定指令,该账号绑定指令包括但不限于确认绑定指令、更换绑定指令和拒绝绑定指令。
223.s609,响应于确认绑定指令,将所述第三账号信息作为第二客户端的第二账号信息。
224.在一种实现方式中,第二客户端响应于用户基于账号绑定界面触发的确认绑定指令,将第三账号信息作为第二客户端的第二账号信息。
225.通过生成账号绑定提示,使得用户基于账号绑定提示,选择与第一客户端的第一账号进行账号互通的第二账号,保证了进行账号打通中的第二账号为用户确认绑定的账号,避免了直接绑定当前登录账号所造成的不便,提高了账号打通流程的准确性。
226.s611,响应于更换绑定指令,生成账号更换界面。
227.在一种实现方式中,第二客户端响应于用户基于账号绑定界面触发的更换绑定指令,然后生成账号更换界面,并将账号更换界面输出。账号更换界面可以是账号信息的输入界面,也可以是第二客户端的多个账号的显示界面,在此不做限定。
228.s613,基于所述账号更换界面获取第四账号信息。
229.在一种实现方式中,第二客户端基于账号更换界面,获取用户选中的绑定账号的第四账号信息,示例性的,用户可以直接基于账号更换界面输入第四账号信息,也可以基于账号更换界面上显示的多个账号中选择任一账号,然后获取被选中账号的第四账号信息。
230.s615,将所述第四账号信息作为第二客户端的第二账号信息。
231.在一种实现方式中,第二客户端将第四账号信息作为第二客户端的第二账号信息。
232.通过生成账号更换界面,使得用户基于账号更换界,选择与第一客户端的第一账号进行账号互通的第二账号,保证了进行账号打通中的第二账号为用户确认绑定的账号,避免了直接绑定当前登录账号所造成的不便,提高了账号打通流程的准确性。
233.s617,响应于拒绝绑定指令,向所述服务器发送拒绝绑定信息。
234.在一种实现方式中,第二客户端响应于用户基于账号绑定界面触发的拒绝绑定指令,生成拒绝绑定信息,然后向服务器发送拒绝绑定信息,并结束与服务器之间的通信,同时结束该账号打通流程。
235.可选的,第二客户端还可以向第一客户端返回拒绝绑定信息,以结束与第一客户端之间的通信,同时结束该账号打通流程。
236.通过生成拒绝绑定信息,避免了未经允许的账号数据外泄,提高了第二客户端中账号数据的安全性。
237.s619,生成包括所述第二客户端信息和所述第二账号信息的确认绑定信息,并将所述确认绑定信息发送至所述服务器,以使所述服务器构建所述第一客户端与第二客户端
的绑定关系,所述第一客户端基于所述绑定关系获取所述第二客户端的第二账号信息对应的账号数据。
238.具体可参见步骤s508,在此不再赘述。
239.s621,接收所述第一客户端发送的账号数据获取请求,所述账号数据获取请求包括绑定信息。
240.在一种实现方式中,账号数据获取请求包括绑定信息,账号数据获取请求用于请求第二账号信息对应的账号数据,且第二账号信息为绑定信息对应的绑定关系中的第二账号信息。绑定信息(session)是一个加密字符串,用于指示第一客户端与第二客户端的绑定关系,其中,第一客户端与第二客户端的绑定关系包括第一客户端信息与第二客户端信息之间的第一映射关系,第一账号信息和第二账号信息之间的第二映射关系。
241.第二客户端接收第一客户端发送的账号数据获取请求,然后在账号数据获取请求中获取绑定信息。
242.s623,基于所述绑定信息生成账号确定请求,并将所述账号确定请求发送至所述服务器,以使所述服务器基于所述账号确定请求确定所述绑定信息有效后,基于所述绑定信息对应的绑定关系获取所述第二客户端对应的第二账号信息,并将所述第二账号信息发送至所述第二客户端。
243.在一种实现方式中,账号确定请求包括绑定信息,该账号确定请求用于确定绑定信息有效,并确定绑定信息对应的第二账号信息。
244.第二客户端基于绑定信息生成账号确定请求,然后将账号确定请求发送至服务器,以使服务器基于账号确定请求中的绑定信息,判断该绑定信息是否有效,并在绑定信息有效时,获取该绑定信息对应的第二账号信息,再将第二账号信息发送至第二客户端。
245.可以理解的是,服务器还会在绑定信息无效时,生成绑定信息无效的错误提示,然后将绑定信息无效的错误提示发送至第二客户端。进一步的,第二客户端接收到绑定信息无效的错误提示时,生成拒绝发送账号数据的拒绝账号打通信息,并将该拒绝账号打通信息发送至第一客户端,以结束与第一客户端之间的通信,同时结束该账号打通流程。
246.s625,接收所述服务器发送的第二账号信息。
247.在一种实现方式中,第二客户端接收服务器发送的第二账号信息。
248.s627,获取所述第二账号信息对应的账号数据,向所述第一客户端发送所述第二账号信息对应的账号数据。
249.在一种实现方式中,第二客户端基于第二账号信息,在第二客户端的多个账号中确定第二账号信息对应的第二账号,然后获取第二账号产生的账号数据,再将获取到的账号数据发送至第一客户端中,以实现第一账号信息对应的第一账号与第二账号信息的第二账号之间的数据同步,进而实现这两个账号的账号打通目的。
250.在一种实现方式中,第二客户端获取到第二账号产生的账号数据后,可以基于设定数据筛选规则,在第二账号产生的账号数据中获取满足设定数据筛选规则的目标账号数据,然后将目标账号数据作为第二账号信息对应的账号数据,返回至第一客户端中。既实现了第一账号与第二账号之间的账号打通,还避免了将无关数据或冗余数据发送至第一客户端所造成的资源浪费。
251.通过生成携带绑定信息的账号确定请求,并将账号确定请求发送至服务器中,以
通过服务器对绑定信息进行验证,避免了第一客户端仍旧通过已被销毁的绑定信息向第二客户端请求账号数据的情况,避免了账号数据泄露的问题;同时还通过确定绑定信息对应的第二账号信息,以针对绑定信息对应的第二账号信息获取相对应的账号数据,避免了非绑定账号的账号数据的非法流出,减少了非绑定账号的信息泄露问题,提高了账号打通流程的安全性。
252.下面将结合附图8-附图13本说明书一个或多个实施例提供的相关装置进行详细介绍。需要说明的是,附图8-附图13相关装置,用于执行本说明书一个或多个实施例图2-图7所示实施例的方法,为了便于说明,仅示出了与本说明书一个或多个实施例相关的部分,具体技术细节未揭示的,请参照本说明书一个或多个实施例图2-图7所示的实施例。
253.请参见图8,为本说明书一个或多个实施例提供了一种服务器的结构示意图。如图8所示,本说明书一个或多个实施例的所述服务器1可以包括:验证请求接收模块11、令牌验证模块12、确认信息接收模块13和绑定关系构建模块14。
254.验证请求接收模块11,用于接收所述第二客户端发送的信息验证请求,所述信息验证请求包括会话令牌、所述第一客户端的第一客户端信息、所述第一客户端的第一账号信息和所述第二客户端的第二客户端信息;
255.令牌验证模块12,用于基于所述第一客户端信息、所述第一账号信息和所述第二客户端信息,验证所述会话令牌有效,并向所述第二客户端返回验证通过消息;
256.确认信息接收模块13,用于接收所述第二客户端发送的确认绑定信息,所述确认绑定信息包括所述第二客户端的第二客户端信息和所述第二客户端的第二账号信息;
257.绑定关系构建模块14,用于基于所述第一客户端信息、所述第一账号信息、所述第二客户端信息和第二账号信息,构建所述第一客户端与第二客户端的绑定关系,以使所述第一客户端基于所述绑定关系获取所述第二客户端的第二账号信息对应的账号数据。
258.在本说明书一个或多个实施例中,通过服务器为第一客户端和第二客户端提供账号打通服务,具体来说,服务器是通过验证第二客户端发送的信息验证请求,以使第二客户端接收到验证通过消息后,向服务器发送确定绑定消息,服务器再基于第二客户端发送的确认绑定信息,构建第一客户端与第二客户端之间的绑定关系,以使第一客户端基于绑定关系获取第二客户端的第二账号信息对应的账号数据,则可以理解的是,该账号打通流程是服务器所提供的标准化流程,也是服务器所提供的一个通用流程,该流程无需考虑第一客户端与第二客户端所采用的账号体系,更无需考虑第一客户端与第二客户端的链路设计,从而无需针对于第一客户端和第二客户端设计对应的账户打通流程,进而提高了账号打通效率。
259.可选的,请参照图9,为本说明书一个或多个实施例提供了一种服务器的结构示意图。如图9所示,本说明书一个或多个实施例的所述服务器1还可以包括:令牌获取模块15。
260.令牌获取模块15具体用于:
261.接收所述第一客户端发送的账号打通请求,所述账号打通申请包括所述第一客户端的第一客户端信息、所述第一客户端的第一账号信息和所述第二客户端的第二客户端信息;
262.基于所述第一客户端信息、所述第一账号信息和所述第二客户端信息,生成所述账号打通请求对应的会话令牌;
263.将所述会话令牌返回至所述第一客户端,以使所述第一客户端向所述第二客户端发送携带所述会话令牌的账号打通消息,所述第二客户端基于所述账号打通消息向所述服务器发送信息验证请求。
264.可选的,令牌验证模块12具体用于:
265.基于所述第一客户端信息、所述第一账号信息和所述第二客户端信息,确定预先设置的预存会话令牌;
266.若所述预存会话令牌与所述会话令牌一致,则确定所述会话令牌有效,并向所述第二客户端返回验证通过消息。
267.可选的,如图9所示,本说明书一个或多个实施例的所述服务器1还可以包括:账号数据获取模块16。
268.账号数据获取模块16具体用于:
269.基于所述第一客户端与所述第二客户端的绑定关系,生成绑定信息;
270.向所述第一客户端发送所述绑定信息,以使所述第一客户端基于所述绑定信息向所述第二客户端发送账号数据获取请求;
271.接收所述第二客户端发送的账号确定请求,所述账号确定请求包括所述绑定信息;
272.基于所述绑定信息对应的绑定关系获取所述第二客户端对应的第二账号信息;
273.向所述第二客户端发送所述第二账号信息,以使所述第二客户端获取所述第二账号信息对应的账号数据,并将所述账号数据返回至所述第一客户端。
274.可选的,账号数据获取模块16具体用于:
275.验证所述账号确定请求中的绑定信息;
276.若所述绑定信息有效,则基于所述绑定信息对应的绑定关系获取所述第二客户端对应的第二账号信息;
277.若所述绑定信息无效,则向所述第二客户端发送所述绑定信息无效的错误提示。
278.可选的,如图9所示,本说明书一个或多个实施例的所述服务器1还可以包括:信息销毁模块17。
279.信息销毁模块17具体用于:
280.接收所述第一客户端发送的会话结束通知,所述会话结束通知包括所述绑定信息;
281.销毁所述绑定信息,以使所述绑定信息无效。
282.请参见图10,为本说明书一个或多个实施例提供了一种第一客户端的结构示意图。如图10所示,本说明书一个或多个实施例的所述第一客户端2可以包括:打通信息生成模块21、打通信息发送模块22、账号数据请求模块23和账号数据接收模块24。
283.打通信息生成模块21,用于接收所述服务器发送的会话令牌,基于所述会话令牌、所述第一客户端的第一客户端信息和所述第一客户端的第一账号信息生成账号打通消息;
284.打通信息发送模块22,用于向所述第二客户端发送所述账号打通消息,以使所述第二客户端基于所述账号打通消息确定与所述第一客户端构建绑定关系;
285.账号数据请求模块23,用于若所述服务器存在所述第一客户端与所述第二客户端的绑定关系,则基于所述绑定关系,向所述第二客户端发送账号数据获取请求;
286.账号数据接收模块24,用于接收所述第二客户端发送的账号数据。
287.在本说明书一个或多个实施例中,通过获取服务器发放的会话令牌,然后基于该会话令牌生成账号打通信息,以使第二客户端可以基于账号打通信息中的会话令牌对第一客户端进行身份验证,并在验证通过后,由服务器构建第一客户端与第二客户端之间的绑定关系,则第一客户端可以基于绑定关系获取第二客户端的第二账号信息对应的账号数据,则可以理解的是,服务器为第一客户端和第二客户端提供了一个标准化的账号打通流程和通用流程,使得第一客户端无需考虑第二客户端所采用的账号体系,也无需考虑第二客户端的链路设计,更无需针对于第二客户端设计对应的账户打通流程,即可与第二客户端进行账号打通,进而提高了账号打通效率。
288.可选的,请参照图11,为本说明书一个或多个实施例提供了一种第一客户端的结构示意图。如图11所示,本说明书一个或多个实施例的所述第一客户端2还可以包括:令牌获取模块25。
289.令牌获取模块25具体用于:
290.获取所述第二客户端的第二客户端信息;
291.基于所述第一客户端的第一客户端信息、所述第一客户端的第一账号信息和所述第二客户端的第二客户端信息,生成账号打通请求;
292.向所述服务器发送所述账号打通请求,以使所述服务器基于所述账号打通请求生成会话令牌,并将所述会话令牌返回至所述第一客户端。
293.可选的,所述账号数据请求模块23,具体用于:
294.接收所述服务器发送的绑定信息;
295.生成携带所述绑定信息的账号数据获取请求;
296.向所述第二客户端发送所述账号数据获取请求,以使所述第二客户端获取所述账号数据获取请求对应的账号数据,并将所述账号数据返回至所述第一客户端。
297.可选的,如图11所示,本说明书一个或多个实施例的所述第一客户端2还可以包括:信息销毁模块26。
298.信息销毁模块26,具体用于:
299.生成会话结束通知,所述会话结束通知包括所述绑定信息;
300.将所述会话结束通知发送至所述服务器。
301.请参见图12,为本说明书一个或多个实施例提供了一种第二客户端的结构示意图。如图12所示,本说明书一个或多个实施例的所述第二客户端3可以包括:验证请求生成模块31、验证请求发送模块32、账号信息获取模块33和确认信息生成模块34。
302.验证请求生成模块31,用于接收所述第一客户端发送的账号打通消息,基于所述账号打通消息生成信息验证请求,所述账号打通消息包括会话令牌、所述第一客户端的第一客户端信息和所述第一客户端的第一账号信息,所述信息验证请求包括所述账号打通消息和所述第二客户端的第二客户端信息;
303.验证请求发送模块32,用于将所述信息验证请求发送至所述服务器,以使所述服务器基于所述第一客户端信息、所述第一账号信息和所述第二客户端信息,验证所述会话令牌是否有效;
304.账号信息获取模块33,用于若接收到所述服务器发送的验证通过消息,则获取所
述第二客户端的第二账号信息;
305.确认信息生成模块34,用于生成包括所述第二客户端信息和所述第二账号信息的确认绑定信息,并将所述确认绑定信息发送至所述服务器,以使所述服务器构建所述第一客户端与第二客户端的绑定关系,所述第一客户端基于所述绑定关系获取所述第二客户端的第二账号信息对应的账号数据。
306.在本说明书一个或多个实施例中,通过向服务器发送信息验证请求,以通过服务器验证第一客户端的合法身份,以在第一客户端合法时,生成确认绑定信息,以通过服务器构建第一客户端与第二客户端之间的绑定关系,则第一客户端可以基于绑定关系获取第二客户端的第二账号信息对应的账号数据,则可以理解的是,服务器为第一客户端和第二客户端提供了一个标准化的账号打通流程和通用流程,使得第二客户端无需考虑第一客户端所采用的账号体系,也无需考虑第一客户端的链路设计,更无需针对于第一客户端设计对应的账户打通流程,即可与第一客户端进行账号打通,进而提高了账号打通效率。
307.可选的,所述账号信息获取模块33,具体用于:
308.获取所述第二客户端中处于登录状态的第三账号信息;
309.基于所述第三账号信息生成账号绑定提示;
310.响应于确认绑定指令,将所述第三账号信息作为第二客户端的第二账号信息。
311.可选的,请参照图13,为本说明书一个或多个实施例提供了一种第二客户端的结构示意图。如图13所示,本说明书一个或多个实施例的所述第二客户端3还可以包括:账号信息获取模块35。
312.所述账号信息获取模块35,具体用于:
313.响应于更换绑定指令,生成账号更换界面;
314.基于所述账号更换界面获取第四账号信息;
315.将所述第四账号信息作为第二客户端的第二账号信息。
316.可选的,如图13所示,本说明书一个或多个实施例的所述第二客户端3还可以包括:拒绝绑定模块36。
317.所述拒绝绑定模块36,具体用于:
318.响应于拒绝绑定指令,向所述服务器发送拒绝绑定信息。
319.可选的,如图13所示,本说明书一个或多个实施例的所述第二客户端3还可以包括:账号数据发送模块37。
320.所述账号数据发送模块37,具体用于:
321.接收所述第一客户端发送的账号数据获取请求,所述账号数据获取请求包括绑定信息;
322.基于所述绑定信息生成账号确定请求,并将所述账号确定请求发送至所述服务器,以使所述服务器基于所述账号确定请求确定所述绑定信息有效后,基于所述绑定信息对应的绑定关系获取所述第二客户端对应的第二账号信息,并将所述第二账号信息发送至所述第二客户端;
323.接收所述服务器发送的第二账号信息;
324.获取所述第二账号信息对应的账号数据,向所述第一客户端发送所述第二账号信息对应的账号数据。
325.本说明书一个或多个实施例还提供了一种存储介质,所述存储介质可以存储有多条程序指令,所述程序指令适于由处理器加载并执行如上述图2-图7所示实施例的方法步骤,具体执行过程可以参见图2-图7所示实施例的具体说明,在此不进行赘述。
326.本说明书一个或多个实施例还提供了一种计算机程序产品,该计算机程序产品存储有至少一条指令,所述至少一条指令由所述处理器加载并执行如上述图2-图7所示实施例的所述账号打通方法,具体执行过程可以参见图2-图7所示实施例的具体说明,在此不进行赘述。
327.请参考图14,其示出了本说明书一个或多个实施例一个示例性实施例提供的电子设备的结构方框图。本说明书一个或多个实施例中的电子设备可以包括一个或多个如下部件:处理器110、存储器120、输入装置130、输出装置140和总线150。处理器110、存储器120、输入装置130和输出装置140之间可以通过总线150连接。
328.处理器110可以包括一个或者多个处理核心。处理器110利用各种接口和线路连接整个电子设备内的各个部分,通过运行或执行存储在存储器120内的指令、程序、代码集或指令集,以及调用存储在存储器120内的数据,执行电子设备100的各种功能和处理数据。可选地,处理器110可以采用数字信号处理(digital signal processing,dsp)、现场可编程门阵列(field-programmable gate array,fpga)、可编程逻辑阵列(programmable logic array,pla)中的至少一种硬件形式来实现。处理器110可集成处理器(central processing unit,cpu)、图像处理器(graphics processing unit,gpu)和调制解调器等中的一种或几种的组合。其中,cpu主要处理操作系统、用户界面和应用程序等;gpu用于负责显示内容的渲染和绘制;调制解调器用于处理无线通信。可以理解的是,上述调制解调器也可以不集成到处理器110中,单独通过一块通信芯片进行实现。
329.存储器120可以包括随机存储器(random access memory,ram),也可以包括只读存储器(read-only memory,rom)。可选地,该存储器120包括非瞬时性计算机可读介质(non-transitory computer-readable storage medium)。存储器120可用于存储指令、程序、代码、代码集或指令集。存储器120可包括存储程序区和存储数据区,其中,存储程序区可存储用于实现操作系统的指令、用于实现至少一个功能的指令(比如触控功能、声音播放功能、图像播放功能等)、用于实现下述各个方法实施例的指令等,该操作系统可以是安卓(android)系统,包括基于android系统深度开发的系统、苹果公司开发的ios系统,包括基于ios系统深度开发的系统或其它系统。存储数据区还可以存储电子设备在使用中所创建的数据比如电话本、音视频数据、聊天记录数据等。
330.参见图15所示,存储器120可分为操作系统空间和用户空间,操作系统即运行于操作系统空间,原生及第三方应用程序即运行于用户空间。为了保证不同第三方应用程序均能够达到较好的运行效果,操作系统针对不同第三方应用程序为其分配相应的系统资源。然而,同一第三方应用程序中不同应用场景对系统资源的需求也存在差异,比如,在本地资源加载场景下,第三方应用程序对磁盘读取速度的要求较高;在动画渲染场景下,第三方应用程序则对gpu性能的要求较高。而操作系统与第三方应用程序之间相互独立,操作系统往往不能及时感知第三方应用程序当前的应用场景,导致操作系统无法根据第三方应用程序的具体应用场景进行针对性的系统资源适配。
331.为了使操作系统能够区分第三方应用程序的具体应用场景,需要打通第三方应用
程序与操作系统之间的数据通信,使得操作系统能够随时获取第三方应用程序当前的场景信息,进而基于当前场景进行针对性的系统资源适配。
332.以操作系统为android系统为例,存储器120中存储的程序和数据如图16所示,存储器120中可存储有linux内核层320、系统运行时库层340、应用框架层360和应用层380,其中,linux内核层320、系统运行库层340和应用框架层360属于操作系统空间,应用层380属于用户空间。linux内核层320为电子设备的各种硬件提供了底层的驱动,如显示驱动、音频驱动、摄像头驱动、蓝牙驱动、wi-fi驱动、电源管理等。系统运行库层340通过一些c/c++库来为android系统提供了主要的特性支持。如sqlite库提供了数据库的支持,opengl/es库提供了3d绘图的支持,webkit库提供了浏览器内核的支持等。在系统运行时库层340中还提供有安卓运行时库(android runtime),它主要提供了一些核心库,能够允许开发者使用java语言来编写android应用。应用框架层360提供了构建应用程序时可能用到的各种api,开发者也可以通过使用这些api来构建自己的应用程序,比如活动管理、窗口管理、视图管理、通知管理、内容提供者、包管理、通话管理、资源管理、定位管理。应用层380中运行有至少一个应用程序,这些应用程序可以是操作系统自带的原生应用程序,比如联系人程序、短信程序、时钟程序、相机应用等;也可以是第三方开发者所开发的第三方应用程序,比如游戏类应用程序、即时通信程序、相片美化程序、壁纸设置程序等。
333.以操作系统为ios系统为例,存储器120中存储的程序和数据如图17所示,ios系统包括:核心操作系统层420(core os layer)、核心服务层440(core services layer)、媒体层460(media layer)、可触摸层480(cocoa touch layer)。核心操作系统层420包括了操作系统内核、驱动程序以及底层程序框架,这些底层程序框架提供更接近硬件的功能,以供位于核心服务层440的程序框架所使用。核心服务层440提供给应用程序所需要的系统服务和/或程序框架,比如基础(foundation)框架、账号框架、广告框架、数据存储框架、网络连接框架、地理位置框架、运动框架等等。媒体层460为应用程序提供有关视听方面的接口,如图形图像相关的接口、音频技术相关的接口、视频技术相关的接口、音视频传输技术的无线播放(airplay)接口等。可触摸层480为应用程序开发提供了各种常用的界面相关的框架,可触摸层480负责用户在电子设备上的触摸交互操作。比如本地通知服务、远程推送服务、广告框架、游戏工具框架、消息用户界面接口(user interface,ui)框架、用户界面uikit框架、地图框架等等。
334.在图17所示出的框架中,与大部分应用程序有关的框架包括但不限于:核心服务层440中的基础框架和可触摸层480中的uikit框架。基础框架提供许多基本的对象类和数据类型,为所有应用程序提供最基本的系统服务,和ui无关。而uikit框架提供的类是基础的ui类库,用于创建基于触摸的用户界面,ios应用程序可以基于uikit框架来提供ui,所以它提供了应用程序的基础架构,用于构建用户界面,绘图、处理和用户交互事件,响应手势等等。
335.其中,在ios系统中实现第三方应用程序与操作系统数据通信的方式以及原理可参考android系统,本说明书一个或多个实施例在此不再赘述。
336.其中,输入装置130用于接收输入的指令或数据,输入装置130包括但不限于键盘、鼠标、摄像头、麦克风或触控设备。输出装置140用于输出指令或数据,输出装置140包括但不限于显示设备和扬声器等。在一个示例中,输入装置130和输出装置140可以合设,输入装
置130和输出装置140为触摸显示屏,该触摸显示屏用于接收用户使用手指、触摸笔等任何适合的物体在其上或附近的触摸操作,以及显示各个应用程序的用户界面。触摸显示屏通常设置在电子设备的前面板。触摸显示屏可被设计成为全面屏、曲面屏或异型屏。触摸显示屏还可被设计成为全面屏与曲面屏的结合,异型屏与曲面屏的结合,本说明书一个或多个实施例对此不加以限定。
337.除此之外,本领域技术人员可以理解,上述附图所示出的电子设备的结构并不构成对电子设备的限定,电子设备可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。比如,电子设备中还包括射频电路、输入单元、传感器、音频电路、wi-fi模块、电源、蓝牙模块等部件,在此不再赘述。
338.在本说明书一个或多个实施例中,各步骤的执行主体可以是上文介绍的电子设备。可选地,各步骤的执行主体为电子设备的操作系统。操作系统可以是安卓系统,也可以是ios系统,或者其它操作系统,本说明书一个或多个实施例对此不作限定。
339.本说明书一个或多个实施例的电子设备,其上还可以安装有显示设备,显示设备可以是各种能实现显示功能的设备,例如:阴极射线管显示器(cathode ray tubedisplay,简称cr)、发光二极管显示器(light-emitting diode display,简称led)、电子墨水屏、液晶显示屏(liquid crystal display,简称lcd)、等离子显示面板(plasma display panel,简称pdp)等。用户可以利用电子设备101上的显示设备,来查看显示的文字、图像、视频等信息。所述电子设备可以是智能手机、平板电脑、游戏设备、ar(augmented reality,增强现实)设备、汽车、数据存储装置、音频播放装置、视频播放装置、笔记本、桌面计算设备、可穿戴设备诸如电子手表、电子眼镜、电子头盔、电子手链、电子项链、电子衣物等设备。
340.在图14所示的电子设备中,处理器110可以用于调用存储器120中存储的账号打通程序并具体执行以下操作:
341.接收所述第二客户端发送的信息验证请求,所述信息验证请求包括会话令牌、所述第一客户端的第一客户端信息、所述第一客户端的第一账号信息和所述第二客户端的第二客户端信息;
342.基于所述第一客户端信息、所述第一账号信息和所述第二客户端信息,验证所述会话令牌有效,并向所述第二客户端返回验证通过消息;
343.接收所述第二客户端发送的确认绑定信息,所述确认绑定信息包括所述第二客户端的第二客户端信息和所述第二客户端的第二账号信息;
344.基于所述第一客户端信息、所述第一账号信息、所述第二客户端信息和第二账号信息,构建所述第一客户端与第二客户端的绑定关系,以使所述第一客户端基于所述绑定关系获取所述第二客户端的第二账号信息对应的账号数据。
345.可选的,处理器110在执行接收所述第二客户端发送的信息验证请求之前,还执行以下操作:
346.接收所述第一客户端发送的账号打通请求,所述账号打通申请包括所述第一客户端的第一客户端信息、所述第一客户端的第一账号信息和所述第二客户端的第二客户端信息;
347.基于所述第一客户端信息、所述第一账号信息和所述第二客户端信息,生成所述账号打通请求对应的会话令牌;
348.将所述会话令牌返回至所述第一客户端,以使所述第一客户端向所述第二客户端发送携带所述会话令牌的账号打通消息,所述第二客户端基于所述账号打通消息向所述服务器发送信息验证请求。
349.可选的,处理器110在执行基于所述第一客户端信息、所述第一账号信息和所述第二客户端信息,验证所述会话令牌有效,并向所述第二客户端返回验证通过消息时,具体执行以下操作:
350.基于所述第一客户端信息、所述第一账号信息和所述第二客户端信息,确定预先设置的预存会话令牌;
351.若所述预存会话令牌与所述会话令牌一致,则确定所述会话令牌有效,并向所述第二客户端返回验证通过消息。
352.可选的,处理器110在执行基于所述第一客户端信息、所述第一账号信息、所述第二客户端信息和第二账号信息,构建所述第一客户端与所述第二客户端的绑定关系之后,还执行以下操作:
353.基于所述第一客户端与所述第二客户端的绑定关系,生成绑定信息;
354.向所述第一客户端发送所述绑定信息,以使所述第一客户端基于所述绑定信息向所述第二客户端发送账号数据获取请求;
355.接收所述第二客户端发送的账号确定请求,所述账号确定请求包括所述绑定信息;
356.基于所述绑定信息对应的绑定关系获取所述第二客户端对应的第二账号信息;
357.向所述第二客户端发送所述第二账号信息,以使所述第二客户端获取所述第二账号信息对应的账号数据,并将所述账号数据返回至所述第一客户端。
358.可选的,处理器110在执行基于基于所述绑定信息对应的绑定关系获取所述第二客户端对应的第二账号信息时,具体执行以下操作:
359.验证所述账号确定请求中的绑定信息;
360.若所述绑定信息有效,则基于所述绑定信息对应的绑定关系获取所述第二客户端对应的第二账号信息;
361.若所述绑定信息无效,则向所述第二客户端发送所述绑定信息无效的错误提示。
362.可选的,处理器110在执行向所述第一客户端和所述第二客户端发送所述绑定信息之后,还执行以下操作:
363.接收所述第一客户端发送的会话结束通知,所述会话结束通知包括所述绑定信息;
364.销毁所述绑定信息,以使所述绑定信息无效。
365.在本说明书一个或多个实施例中,通过服务器为第一客户端和第二客户端提供账号打通服务,具体来说,服务器是通过验证第二客户端发送的信息验证请求,以使第二客户端接收到验证通过消息后,向服务器发送确定绑定消息,服务器再基于第二客户端发送的确认绑定信息,构建第一客户端与第二客户端之间的绑定关系,以使第一客户端基于绑定关系获取第二客户端的第二账号信息对应的账号数据,则可以理解的是,该账号打通流程是服务器所提供的标准化流程,也是服务器所提供的一个通用流程,该流程无需考虑第一客户端与第二客户端所采用的账号体系,更无需考虑第一客户端与第二客户端的链路设
计,从而无需针对于第一客户端和第二客户端设计对应的账户打通流程,进而提高了账号打通效率。
366.可选的,处理器110还可以用于调用存储器120中存储的账号打通程序并具体执行以下操作:
367.接收所述服务器发送的会话令牌,基于所述会话令牌、所述第一客户端的第一客户端信息和所述第一客户端的第一账号信息生成账号打通消息;
368.向所述第二客户端发送所述账号打通消息,以使所述第二客户端基于所述账号打通消息确定与所述第一客户端构建绑定关系;
369.若所述服务器存在所述第一客户端与所述第二客户端的绑定关系,则基于所述绑定关系,向所述第二客户端发送账号数据获取请求;
370.接收所述第二客户端发送的账号数据。
371.可选的,处理器110在执行接收所述服务器发送的会话令牌之前,还执行以下操作:
372.获取所述第二客户端的第二客户端信息;
373.基于所述第一客户端的第一客户端信息、所述第一客户端的第一账号信息和所述第二客户端的第二客户端信息,生成账号打通请求;
374.向所述服务器发送所述账号打通请求,以使所述服务器基于所述账号打通请求生成会话令牌,并将所述会话令牌返回至所述第一客户端。
375.可选的,处理器110在执行若所述服务器存在所述第一客户端与所述第二客户端的绑定关系,则基于所述绑定关系,向所述第二客户端发送账号数据获取请求时,具体执行以下操作:
376.接收所述服务器发送的绑定信息;
377.生成携带所述绑定信息的账号数据获取请求;
378.向所述第二客户端发送所述账号数据获取请求,以使所述第二客户端获取所述账号数据获取请求对应的账号数据,并将所述账号数据返回至所述第一客户端。
379.可选的,处理器110在执行基于接收所述第二客户端发送的账号数据之后,还执行以下操作:
380.生成会话结束通知,所述会话结束通知包括所述绑定信息;
381.将所述会话结束通知发送至所述服务器。
382.在本说明书一个或多个实施例中,通过获取服务器发放的会话令牌,然后基于该会话令牌生成账号打通信息,以使第二客户端可以基于账号打通信息中的会话令牌对第一客户端进行身份验证,并在验证通过后,由服务器构建第一客户端与第二客户端之间的绑定关系,则第一客户端可以基于绑定关系获取第二客户端的第二账号信息对应的账号数据,则可以理解的是,服务器为第一客户端和第二客户端提供了一个标准化的账号打通流程和通用流程,使得第一客户端无需考虑第二客户端所采用的账号体系,也无需考虑第二客户端的链路设计,更无需针对于第二客户端设计对应的账户打通流程,即可与第二客户端进行账号打通,进而提高了账号打通效率。
383.可选的,处理器110还可以用于调用存储器120中存储的账号打通程序并具体执行以下操作:
384.接收所述第一客户端发送的账号打通消息,基于所述账号打通消息生成信息验证请求,所述账号打通消息包括会话令牌所述第一客户端的第一客户端信息和所述第一客户端的第一账号信息所述信息验证请求包括所述账号打通消息和所述第二客户端的第二客户端信息;
385.将所述信息验证请求发送至所述服务器,以使所述服务器基于所述第一客户端信息、所述第一账号信息和所述第二客户端信息,验证所述会话令牌是否有效;
386.若接收到所述服务器发送的验证通过消息,则获取所述第二客户端的第二账号信息;
387.生成包括所述第二客户端信息和所述第二账号信息的确认绑定信息,并将所述确认绑定信息发送至所述服务器,以使所述服务器构建所述第一客户端与第二客户端的绑定关系,所述第一客户端基于所述绑定关系获取所述第二客户端的第二账号信息对应的账号数据。
388.可选的,处理器110在执行获取所述第二客户端的第二账号信息时,具体执行以下操作:
389.获取所述第二客户端中处于登录状态的第三账号信息;
390.基于所述第三账号信息生成账号绑定提示;
391.响应于确认绑定指令,将所述第三账号信息作为第二客户端的第二账号信息。
392.可选的,处理器110在执行基于所述第三账号信息生成账号绑定提示之后,还执行以下操作:
393.响应于更换绑定指令,生成账号更换界面;
394.基于所述账号更换界面获取第四账号信息;
395.将所述第四账号信息作为第二客户端的第二账号信息。
396.可选的,处理器110在执行基于所述第三账号信息生成账号绑定提示之后,还执行以下操作:
397.响应于拒绝绑定指令,向所述服务器发送拒绝绑定信息。
398.可选的,处理器110在执行生成包括所述第二客户端信息和所述第二账号信息的确认绑定信息,并将所述确认绑定信息发送至所述服务器之后,还执行以下操作:
399.接收所述第一客户端发送的账号数据获取请求,所述账号数据获取请求包括绑定信息;
400.基于所述绑定信息生成账号确定请求,并将所述账号确定请求发送至所述服务器,以使所述服务器基于所述账号确定请求确定所述绑定信息有效后,基于所述绑定信息对应的绑定关系获取所述第二客户端对应的第二账号信息,并将所述第二账号信息发送至所述第二客户端;
401.接收所述服务器发送的第二账号信息;
402.获取所述第二账号信息对应的账号数据,向所述第一客户端发送所述第二账号信息对应的账号数据。
403.在本说明书一个或多个实施例中,通过向服务器发送信息验证请求,以通过服务器验证第一客户端的合法身份,以在第一客户端合法时,生成确认绑定信息,以通过服务器构建第一客户端与第二客户端之间的绑定关系,则第一客户端可以基于绑定关系获取第二
客户端的第二账号信息对应的账号数据,则可以理解的是,服务器为第一客户端和第二客户端提供了一个标准化的账号打通流程和通用流程,使得第二客户端无需考虑第一客户端所采用的账号体系,也无需考虑第一客户端的链路设计,更无需针对于第一客户端设计对应的账户打通流程,即可与第一客户端进行账号打通,进而提高了账号打通效率。
404.需要说明的是,对于前述的各方法实施例,为了简便描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本说明书一个或多个实施例并不受所描述的动作顺序的限制,因为依据本说明书一个或多个实施例,某些步骤可以采用其它顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定都是本说明书一个或多个实施例所必须的。
405.在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其它实施例的相关描述。
406.以上为对本说明书一个或多个实施例所提供的一种账号打通方法、服务器、第一客户端、第二客户端、存储介质及计算机设备的描述,对于本领域的技术人员,依据本说明书一个或多个实施例的思想,在具体实施方式及应用范围上均会有改变之处,综上,本说明书内容不应理解为对本说明书一个或实施例的限制。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1