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

文档序号:8248191阅读:来源:国知局
本地应用之前,判断所述获取登录会话信息的请求的refer来源地址是否在预设的域名范围内,如果是,则继续执行所述确定登录会话信息所在的本地应用;否则,拒绝响应所述web页面上的执行模块或者向所述web页面上的执行模块返回指示错误的信息。
[0041]根据本发明一优选实施方式,所述本地http服务模块在从登录会话信息所在的本地应用获取当前登录用户的登录会话信息之前还用于,通过调用系统接口判断登录会话信息所在的本地应用是否已经安装在本地,如果是,继续执行所述从登录会话信息所在的本地应用获取当前登录用户的登录会话信息;否则,向所述web页面上的执行模块返回指示错误的信息。
[0042]根据本发明一优选实施方式,该装置还包括会话信息维护模块;
[0043]所述本地http服务模块在从登录会话信息所在的本地应用获取当前登录用户的登录会话信息时,具体执行:如果所述本地http服务模块所在的本地应用与所述登录会话信息所在的本地应用是同一个应用,则通过进程内通信的方式向位于同一本地应用的会话信息维护模块发送请求,并获取该会话信息维护模块返回的当前登录用户的登录会话信息;或者,如果所述本地http服务模块所在的本地应用与所述登录会话信息所在的本地应用是不同的应用,则通过进程间通信的方式向所述登录会话信息所在的本地应用中的会话信息维护模块发送请求,并获取该会话信息维护模块返回的当前登录用户的登录会话信息;
[0044]所述会话信息维护模块,用于接收到所述本地http服务模块发送的请求后,向所述本地http服务模块返回该会话信息维护模块所在本地应用中当前登录用户的登录会话信息。
[0045]根据本发明一优选实施方式,所述web页面上的执行模块,还用于在自动登录后,将登录状态信息和登录会话信息存储于web页面所在的本地应用的cookie中。
[0046]根据本发明一优选实施方式,所述web页面上的执行模块,还用于在向本地http服务模块发送获取登录会话信息的请求之前,判断所述web页面所在本地应用的cookie中是否存在对应的登录会话信息,如果是,使用所述web页面所在的本地应用的cookie中对应的登录会话信息进行登录;否则执行所述向本地http服务模块发送获取登录会话信息的请求。
[0047]由以上技术方案可以看出,本发明能够将native app的登录状态同步至其他native应用所加载的页面上,只要智能终端中存在native app处于登录状态,那么当用户在智能终端中打开与该native app属于同一账户系统域名的web页面都能够实现自动登录,减少用户操作,提升用户体验。
【【附图说明】】
[0048]图1为本发明实施例提供的装置结构图;
[0049]图2为本发明实施例提供的方法流程图。
【【具体实施方式】】
[0050]为了使本发明的目的、技术方案和优点更加清楚,下面结合附图和具体实施例对本发明进行详细描述。
[0051]为了方便理解首先对本发明提供的装置结构进行介绍,如图1中所示,该装置可以包括:web页面上的执行模块、本地http服务模块以及登录信息维护模块。
[0052]其中web页面上的执行模块可以采用Javascript实现,负责在web页面被加载时,向本地http服务模块发送获取登录会话信息的请求。利用本地http服务模块返回的登录会话信息实现在web页面上的登录,并可以进一步将登录会话信息存储于该web页面所在 native app 的 cookie 中。
[0053]本地http服务模块内置于某一个native app中,负责接收web页面上的执行模块发送的获取登录会话信息的请求,确定该登录会话信息所在的native app,并向登录会话信息所在的native app发送获取登录会话信息的请求;获取登录会话信息所在的nativeapp返回的登录会话信息,并将获取的登录会话信息返回给web页面上的执行模块。
[0054]登录信息维护模块内置于native app中用于维护登录会话信息,并应本地http服务模块的请求向本地http服务模块返回当前登录用户的登录会话信息。
[0055]上述登录信息维护模块与本地http服务模块可以位于同一个native app,也可以位于不同native app,上述含执行模块的web页面可以在任何能够加载web页面的native应用内被加载,可以在上述登录信息维护模块所在的native app被加载,也可以在上述本地http服务模块所在的native app被加载,也可以在其他任意native app中被加载。
[0056]下面结合图2对本发明提供的方法进行详细描述。图2为本发明实施例提供的方法流程图,如图2中所示,该方法可以包括以下步骤:
[0057]在201中,内置有本地http服务模块的native app在启动后,初始化本地http服务模块以侦听预设的本地网络端口。
[0058]本步骤是预先执行的步骤,初始化本地http服务模块后,本地http服务模块就能够对预设的一个本地网络端口进行侦听,接收发送至该本地网络端口的http请求。
[0059]在202中,当有某个native app (例如手机浏览器)加载web页面时,web页面上的执行模块向预设的本地网络端口发送获取登录会话信息的http请求。该http请求可以包含登录会话信息所在的应用标识信息(即目标应用的标识信息),还可以包含JS回调函数信息。
[0060]其中登录会话信息所在的应用标识信息是预先在执行模块中设置好的,一个服务提供商的web页面对应登录会话信息所在的native app也是同一服务提供商的其他产品,即账户采用相同的系统域名,在此可以预先在执行模块中设置登录会话信息所在的应用标识信息。例如,可以在百度地图的web页面上的执行模块中预先设置登录会话信息所在的应用标识信息为百度地图的native app的标识信息,或者百度知道的native app的标识信息等。该应用标识信息可以包括但不限于应用的包名或包签名信息,另外,这里的应用标识信息可以是一个,也可以是多于一个的应用标识信息。
[0061 ] 另外,在本步骤中,加载web页面后,web页面上的执行模块可以首先判断该web页面所在native app的cookie中是否已经存在对应的登录会话信息,如果已经存在,贝Ij可以直接利用cookie中的登录会话信息进行登录。如果不存在,再向预设的本地网络端口发送获取登录会话信息的http请求。
[0062]在203中,本地http服务模块从预设的本地网络端口侦听到上述http请求。
[0063]在204中,本地http服务模块判断http请求的合法性,如果是合法请求,继续执行205 ;如果是非法请求,则直接拒绝响应或者返回指示错误的信息。
[0064]本步骤中可以校验http请求的refer (来源地址)是否在预设的域名范围内来判断http请求的合法性,如果http请求的refer不再预设的域名范围内,则确定该http请求非法,如果在预设的域名范围内,则确定该http请求合法。上述域名范围可以预先设置于本地http服务模块中,也可以通过云端下发配置信息的方式对本地http服务模块中的域名范围进行配置。
[0065]本步骤中域名范围的设置通常是为了限制登录状态同步这一方法的应用范围,也可以不进行限制,因此本步骤是一个可选步骤。
[0066]在205中,确定该http请求获取的登录会话信息所在的native app (即确定目标应用)。
[0067]如果http请求中包含登录会话信息所在的应用标识信息,则直接确定该应用标识信息对应的native app。如果http请求中不包含登录会话信息所在的应用标识信息,贝Ij本地http服务模块可以根据预设的配置信息确定登录会话信息所在的native app。
[0068]这里预设的配置信息可以是默认的native app信息,即如果http请求中不包含应用标识信息,本地http服务模块就采用默认的native app作为登录会话信息所在的native app。例如,百度公司可以设置百度手机助手作为默认native app,一旦接收到的http请求中没有指定目标应用,则将百度手机助手作为目标应用。可以将经常处于登录状态,或者使用率较高的native app作为默
当前第2页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1