请问H5 WebSocket通信(后台java+tomcat)在页面跳转后断开,怎么解决

老飞的天空 发布于 2016/09/12 18:14
阅读 1K+
收藏 0

最近在做一个在线客服的功能,使用的环境是java+tomcat+jQuery;  jdk1.8+tomcat8.0

最用户与客服 对话中;当客服发送一个链接给用户时;用户点击链接时,就直接断掉了链接;

请问如何在点击链接时还保持着通信呢

加载中
0
心_行
心_行
打开新的页面
0
p2ng
p2ng
在用户端,点击打开链接是以新的tab页打开方式...
0
您的好友
您的好友

1. 前端onbeforeunload事件里提示用户,防止用户意外关闭页面

2. 所有的链接加上target= _blank    从新标签页打开

0
卡布达
卡布达
target开个新页面就可以了啊,,你那是点链接重新刷新了所以断了啊.
0
神恰恰
神恰恰

websocket 发送消息的时候,判断是否是链接,如果是的那么在发送的json中的直接封装好<a>标签,属性target="_blank"

0
yanInsert
yanInsert
打开新页面之后重新连接嘛,再说啦,你打开新页面时怎么打开?新开一个页面还是在本身上面进行开启。
老飞的天空
老飞的天空
嗯,是我描述的不够清楚, 我的页面是app上的,不是PC端的,在在app中的<a>标签加不加 target="_blank"效果是一样的, 所以在跳转的时候还是直接断开了通信
0
老飞的天空
老飞的天空

引用来自“心_行”的评论

打开新的页面

嗯,是我描述的不够清楚,

我的页面是app上的,不是PC端的,在在app中的<a>标签加不加 target="_blank"效果是一样的,

所以在跳转的时候还是直接断开了通信

心_行
心_行
可以点击链接的时候,让这个链接以一个iframe的形式加载在当前页面。也就是点击链接显示iframe,再加上一个退出或关闭按钮显示聊天界面
0
老飞的天空
老飞的天空

引用来自“神恰恰”的评论

websocket 发送消息的时候,判断是否是链接,如果是的那么在发送的json中的直接封装好<a>标签,属性target="_blank"

嗯,是我描述的不够清楚,

我的页面是app上的,不是PC端的,在在app中的<a>标签加不加 target="_blank"效果是一样的,

所以在跳转的时候还是直接断开了通信
神恰恰
神恰恰
我当时 也做过类似的APP 做法是 外面套一层后,进入APP后就发送websocket,唯一标识你肯定有,在服务端记录下,这个ID是否在线,然后在进到某个页面的时候在发送一下websocket,那么这个ID已经存在就不做处理,就是你打开这个链接,只要还在最外层页面套着,那么websocket就不会断开
0
老飞的天空
老飞的天空

引用来自“卡布达”的评论

target开个新页面就可以了啊,,你那是点链接重新刷新了所以断了啊.

嗯,是我描述的不够清楚,

我的页面是app上的,不是PC端的,在在app中的<a>标签加不加 target="_blank"效果是一样的,

所以在跳转的时候还是直接断开了通信
0
老飞的天空
老飞的天空

引用来自“您的好友”的评论

1. 前端onbeforeunload事件里提示用户,防止用户意外关闭页面

2. 所有的链接加上target= _blank    从新标签页打开

嗯,是我描述的不够清楚,

我的页面是app上的,不是PC端的,在在app中的<a>标签加不加 target="_blank"效果是一样的,

所以在跳转的时候还是直接断开了通信
返回顶部
顶部