iframe无缝集成web应用程序

王朝html/css/js·作者佚名  2007-08-02
宽屏版  字体: |||超大  

本文假定访问iframe所嵌的web app的 SSO 方式是使用 url 附加认证信息(如用户名和密码)。让内嵌 web app 记住自己的最后一次被访问的 url 是最好的也是最简单的方式,因为如果由主程序记录,牵扯到2个 web app 间的通信,简单点的,如使用 javascript 获取内嵌 web app 的地址,跨域会是个问题。

我们为内嵌 web app 增加一个身份验证的 servlet, 目的是为了恢复上次访问的 url。在每次访问内嵌 web app 时,这个 servlet 首先检查当前请求用户是否是有效用户(即 session 是否存在),如果是,则从这个用户的 session 中取出上次访问的 url,并 dispatcher 到这个页面;否则,验证并登录这个用户,从数据库中取出上次访问的 url,并放到 session 中,dispatcher 到这个 url 页面。

在 session 过期时,使用 session listener,将当前用户最后一次访问的 url (应为存于 session 中)放入数据库中。

但是有一个问题,就是在登陆外围系统的时候,用户希望看到内嵌系统的页面是默认的页面,而不是上次访问的 url。如何解决这个问题呢?因为对于内嵌程序来说,用户是不是首次登录,它自然是无从知晓了,这一点只有外围系统才能获知,所以,解决方法就是动态改变 iframe 的 src url的参数,仅在刚登录时告诉内嵌的 web app,“用户刚登录,这是第一次访问你”。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
© 2005- 王朝网络 版权所有