一种同步登录状态的方法和装置的制造方法

文档序号:8248191阅读:264来源:国知局
一种同步登录状态的方法和装置的制造方法
【专利说明】
【技术领域】
[0001]本发明涉及计算机应用技术领域,特别涉及一种同步登录状态的方法和装置。【【背景技术】】
[0002]目前大多数大型互联网服务提供商向智能终端既提供webapp (网络应用)的服务,也提供native app (本地应用)的服务。其中web app是运行于网络和标准浏览器上,基于网页技术开发实现特定功能的应用,native app是基于智能终端的操作系统运行的应用。例如百度公司提供的贴吧、知道是web app的产品,百度手机卫士是native app的产品,很多产品是既存在web app也存在native app,例如百度地图、百度视频等既可以是webapp的产品,也可以是native app的产品。
[0003]基于上述特征,用户在使用同一服务提供商的不同产品时,通常使用同一账号,但需要分别在各产品上分别登录,这显然给用户操作带来了麻烦和不便,因此趋势是希望能够使得用户在使用同一服务提供商的不同产品时,能够自动同步登录状态到不同产品。
[0004]目前已经实现的是在同一个nativeapp中相同服务提供商的不同产品之间的登录状态同步,例如用户在百度手机浏览器中登录账户后,就可以将登录状态同步给所有在百度手机浏览器中打开的百度产品线的web页面。其实现方案是浏览器将用户的登录会话信息记录在针对该用户账户的系统域名所对应的用户cookie文件中,从而使得当该域名下的web页面在该浏览器中被加载时,能够直接从cookie中获取登录会话信息,利用该登录会话信息进行自动登录。由于多数操作系统出于安全性考虑,都会为每个应用进程单独维护一份独立的cookie数据,不同应用进程的cookie数据是不能互通的,因此无法实现native app的登录状态同步至其他native app所加载的页面上。

【发明内容】

[0005]有鉴于此,本发明提供了一种同步登录状态的方法和装置,以便于实现将nativeapp的登录状态同步至其他native app所加载的页面上。
[0006]具体技术方案如下:
[0007]一种同步登录状态的方法,该方法包括:
[0008]web页面被加载时,该web页面上的执行模块向本地http服务模块发送获取登录会话信息的请求;
[0009]本地http服务模块接收到获取登录会话信息的请求后,确定登录会话信息所在的本地应用,从登录会话信息所在的本地应用获取当前登录用户的登录会话信息,将获取的登录会话信息返回给所述web页面上的执行模块;
[0010]所述web页面上的执行模块利用所述登录会话信息进行自动登录。
[0011]根据本发明一优选实施方式,该方法还包括:所述本地http服务模块所在的本地应用启动后,初始化所述本地http服务模块以使所述本地http服务模块侦听预设的本地网络端口 ;
[0012]所述web页面上的执行模块向本地http服务模块发送获取登录会话信息的请求包括:所述web页面上的执行模块向所述预设的本地网络端口发送所述获取登录会话信息的请求。
[0013]根据本发明一优选实施方式,所述确定登录会话信息所在的本地应用包括:
[0014]所述本地http服务模块依据所述获取登录会话信息的请求包含的应用标识信息,确定所述应用标识信息对应的本地应用。
[0015]根据本发明一优选实施方式,所述确定登录会话信息所在的本地应用还包括:
[0016]如果所述获取登录会话信息的请求不包含所述应用标识信息,则所述本地http服务模块依据预设的配置信息,确定登录会话信息所在的本地应用。
[0017]根据本发明一优选实施方式,所述获取登录会话信息的请求包括JS回调函数信息;
[0018]所述将获取的登录会话信息返回给所述web页面上的执行模块包括:利用获取的登录会话信息和所述JS回调函数信息生成执行代码,将所述执行代码返回给所述web页面上的执行模块;
[0019]所述web页面上的执行模块利用所述登录会话信息进行自动登录包括:所述web页面上的执行模块执行所述执行代码以完成自动登录。
[0020]根据本发明一优选实施方式,在所述确定登录会话信息所在的本地应用之前,还包括:
[0021]本地http服务模块判断所述获取登录会话信息的请求的refer来源地址是否在预设的域名范围内,如果是,则继续执行所述确定登录会话信息所在的本地应用;否则,拒绝响应所述web页面上的执行模块或者向所述web页面上的执行模块返回指示错误的信息。
[0022]根据本发明一优选实施方式,在所述从登录会话信息所在的本地应用获取当前登录用户的登录会话信息之前还包括:
[0023]所述本地http服务模块通过调用系统接口判断登录会话信息所在的本地应用是否已经安装在本地,如果是,继续执行所述从登录会话信息所在的本地应用获取当前登录用户的登录会话信息;否则,向所述web页面上的执行模块返回指示错误的信息。
[0024]根据本发明一优选实施方式,所述从登录会话信息所在的本地应用获取当前登录用户的登录会话信息包括:
[0025]如果所述本地http服务模块所在的本地应用与所述登录会话信息所在的本地应用是同一个应用,则所述本地http服务模块通过进程内通信的方式向位于同一本地应用的会话信息维护模块发送请求,并获取该会话信息维护模块返回的当前登录用户的登录会话信息;或者,
[0026]如果所述本地http服务模块所在的本地应用与所述登录会话信息所在的本地应用是不同的应用,则所述本地http服务模块通过进程间通信的方式向所述登录会话信息所在的本地应用中的会话信息维护模块发送请求,并获取该会话信息维护模块返回的当前登录用户的登录会话信息。
[0027]根据本发明一优选实施方式,该方法还包括:
[0028]所述web页面上的执行模块自动登录后,将登录状态信息和登录会话信息存储于web页面所在的本地应用的cookie中。
[0029]根据本发明一优选实施方式,所述web页面上的执行模块向本地http服务模块发送获取登录会话信息的请求之前,还包括:
[0030]判断所述web页面所在本地应用的cookie中是否存在对应的登录会话信息,如果是,使用所述web页面所在的本地应用的cookie中对应的登录会话信息进行登录;否则执行所述向本地http服务模块发送获取登录会话信息的请求。
[0031]本发明还提供了一种同步登录状态的装置,该装置包括:
[0032]web页面上的执行模块,用于当web页面被加载时,向本地http服务模块发送获取登录会话信息的请求;利用本地http服务模块返回的登录会话信息进行自动登录;
[0033]本地http服务模块,用于接收到获取登录会话信息的请求后,确定登录会话信息所在的本地应用,从登录会话信息所在的本地应用获取当前登录用户的登录会话信息,将获取的登录会话信息返回给所述web页面上的执行模块。
[0034]根据本发明一优选实施方式,所述本地http服务模块,用于被所在的本地应用初始化后,侦听预设的本地网络端口 ;
[0035]所述web页面上的执行模块,具体用于向所述预设的本地网络端口发送所述获取登录会话信息的请求。
[0036]根据本发明一优选实施方式,所述本地http服务模块在确定登录会话信息所在的本地应用时,具体用于依据所述获取登录会话信息的请求包含的应用标识信息,确定所述应用标识信息对应的本地应用。
[0037]根据本发明一优选实施方式,所述本地http服务模块,还用于如果所述获取登录会话信息的请求不包含所述应用标识信息,则依据预设的配置信息,确定登录会话信息所在的本地应用。
[0038]根据本发明一优选实施方式,所述本地http服务模块在将获取的登录会话信息返回给所述web页面上的执行模块时,具体执行:利用获取的登录会话信息和所述获取登录会话信息的请求中包含的JS回调函数信息生成执行代码,将所述执行代码返回给所述web页面上的执行模块;
[0039]所述web页面上的执行模块,具体用于执行所述执行代码以完成自动登录。
[0040]根据本发明一优选实施方式,本地http服务模块,还用于在确定登录会话信息所在的
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1