起步软件技术论坛
搜索
 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 3081|回复: 2

[结贴] 多个复杂首页切换

[复制链接]

4

主题

8

帖子

18

积分

新手上路

Rank: 1

积分
18
QQ
发表于 2018-5-15 21:10:52 | 显示全部楼层 |阅读模式
一、需求描述
项目中需要用到4、5个不同设计风格的首页,不同首页顶部标题栏、左侧导航栏差异很大
示例如下:
001.png

首页A
002.png

首页B

场景1:用户张三登录系统,先打开首页A,点击其中的链接在浏览器新页签中打开首页B
     用户再点击一个链接可能会再打开一个首页B,两次打开显示的数据不同
场景2:用户李四登录系统,根据用户权限的设置直接打开首页B

二、现在的解决办法以及遇到的问题
签于首页布局比较复杂,在UI2/pc3默认index.w基础上复制修改成新的首页A,原来的index.w作为首页B
003.png

首页A跳转至首页B的跳转测试代码如下
004.png


遇到的问题:页面A跳转页面B没问题,点击浏览器标签栏上面的×关掉 B标签页后,再点击页面A中的链接就出现了:服务器连接超时, 是否关闭页面!

尝试过的无效解决办法:
1)更改页面A跳转页面B的方式,跳转地址写在href/写在js里面location.href/window.parent.location.hred,url地址以$UI开头或以http://localhost:8080开头
2)在ui2/portal_x/base/base.js中查看删除cookie bsessionid的时机,点击×时没有调用这个函数
006.png

3)点击×关掉 B标签页后,观察浏览器本地cookie,bsessionid还在,点击再次打开B会跳转至登录,应该是本地浏览器bsessionid还在,后端已经注销了

期望的解决方式:
在上面场景中,用户A点×关闭标签页时保留bsessionid,用户B点×关闭标签页时注销bsessionid
用户点击×关闭标签页的时侯,能够提供一个注入点,根据用户的身份、当前打开的页面决定是否删除本地cookie/注销bsessionid

要是有其它解决办法,只要能解决问题就成

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
35924
发表于 2018-5-16 11:15:44 | 显示全部楼层
平台默认是在/UI2/portal/base/base.js中调用window.onunload中调用了注销,如果是浏览器页签的方式打开,关闭页签就会调用这个,可以自己做判断是否执行
session.png
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

4

主题

8

帖子

18

积分

新手上路

Rank: 1

积分
18
QQ
 楼主| 发表于 2018-5-16 13:58:46 | 显示全部楼层
注释掉后可以用了,先这么用着再想办法优化

非常谢谢
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|X3技术论坛|Justep Inc.    

GMT+8, 2024-5-8 11:40 , Processed in 0.071000 second(s), 26 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表