javascript无限请求_SockJS - 重新连接后无限xhr-streaming呼叫
即时通过SockJS和Spring websockets作为后端使用Stomp。偶尔,我的单块客户端重新连接后会出现问题(无线网络丢失,服务器故障,其他问题)。连接完全恢复,但通过浏览器网络可以看到几秒钟SockJS客户端如何尝试发送xhr-streaming与旧的会话ID。后端用关闭帧c响应[1000,“Go Away!”]应用程序仍然可以工作,但是这个问题会加载CPU并使应用程序变慢。SockJS - >重新连接后无限xhr-streaming呼叫
我可以关闭并启动服务器几次(并不总是会发生)。我不能理解SockJS是如何重新连接的(我们从0开始销毁和创建Sockjs实例)发送xhr-streaming请求与旧会话的id(维护预重连接id会话?内存泄漏?)。我想保持它重新连接后,Sockjs没有任何状态,并始终从头开始。
后台日志:
2016-05-02 21:45:01.943 DEBUG [http-nio-8090-exec-7] o.s.w.s.s.t.h.XhrStreamingTransportHandler - Connection already closed (but not removed yet) for XhrStreamingSockJsSession[id=ypsjtids]
客户端日志:
(新的会话ID - > h2pystok,旧会话ID - > ypsjtids)
<<< PONG
browser.js:120 sockjs-client:buffered-sender send +45ms "\n"
browser.js:120 sockjs-client:buffered-sender sendSchedule +0ms 1
browser.js:120 sockjs-client:ajax-based create ajax sender +2ms http://localhost/eess-services/stomp/355/h2pystok ["\n"]
browser.js:120 sockjs-client:browser:xhr POST +0ms http://localhost/eess-services/stomp/355/h2pystok/xhr_send
ws.js:216 >>> PING
browser.js:120 sockjs-client:browser:xhr withCredentials +2ms
browser.js:120 sockjs-client:browser:xhr readyState +18ms 4
browser.js:120 sockjs-client:browser:xhr status +1ms 200
browser.js:120 sockjs-client:browser:xhr finish +0ms 200 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
o
h
h
h
h
h
browser.js:120 sockjs-client:receiver:xhr finish +0ms 200 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
browser.js:120 sockjs-client:receiver:xhr _chunkHandler +0ms 200
browser.js:120 sockjs-client:receiver:xhr close +0ms network
browser.js:120 sockjs-client:polling close +1ms null network undefined
browser.js:120 sockjs-client:polling _scheduleReceiver +0ms
browser.js:120 sockjs-client:receiver:xhr http://localhost/eess- services/stomp/266/ypsjtids/xhr_streaming +0ms
browser.js:120 sockjs-client:browser:xhr POST +1ms http://localhost/eess-services/stomp/266/ypsjtids/xhr_streaming
我在生产中遇到了这个问题:( Regards。
编辑:
我发现这里是可能出现的错误。在polling.js中,当关闭原因是'网络'时,我看到了一种特殊的处理方式。网络何时再次调用函数_scheduleReceiver()。当我们重新连接发生无限循环时。我不知道这种治疗的原因是什么,但我可以尝试删除'网络'的特殊处理,一切正常。 @skozin你可以试试吗? (!self.pollIsClosing){if(reason ==='network'){self._scheduleReceiver();}} } else {self.emit('close',code || 1006,reason); self.removeAllListeners(); }}
的解决方法是:
如果(!self.pollIsClosing){self.emit( '关闭',代码1006 ||,原因); self.removeAllListeners(); }
+0
经过几天的测试,我发现在iOS中(Iphone 6与最新版本的iOS)无法连接。我已经解决了桌面上的无限循环,但现在我无法连接到移动设备 –
javascript无限请求_SockJS - 重新连接后无限xhr-streaming呼叫相关推荐
- netty客户端连接后无限发送数据,连接不上时无限重试,断线重连
在之前的netty文章里,刚开始学,利用netty实现websocket写了一个聊天程序. 纯netty实现http,websocket协议,头像上传,搭建实时聊天室,群聊,私聊,文字,图片消息 本文 ...
- 服务器装win7无限重启吗,win7系统重装系统后无限重启电脑的解决方法
很多小伙伴都遇到过win7系统重装系统后无限重启电脑的困惑吧,一些朋友看过网上零散的win7系统重装系统后无限重启电脑的处理方法,并没有完完全全明白win7系统重装系统后无限重启电脑是如何解决的,今天 ...
- win10更新后输入密码后无限循环解决方法
win10更新后输入密码后无限循环解决方法 1.解决方法 2.原因解析 3.其他说明 win10更新后输入密码后无限循环解决方法 1.解决方法 1.网上查询到的解决方法都是重启进入安全模式,然后选择疑 ...
- 无限乱斗服务器卡,无限乱斗上线后,“吉格斯商店、卡顿时有发生”
原标题:无限乱斗上线后,"吉格斯商店.卡顿时有发生" S11赛季的比赛正在如火如荼地进行中,相信绝大多数的玩家都关注了,最近一段时间的春季赛,各大战队的整体状态还算不错. 昨天的时 ...
- 无限乱斗服务器卡,无限乱斗上线后,“局局吉格斯商店卡顿时有发生”
原标题:无限乱斗上线后,"局局吉格斯商店卡顿时有发生" S11赛季的比赛正在如火如荼地进行中,相信绝大多数的玩家都关注了,最近一段时间的春季赛,各大战队的整体状态还算不错. 昨天的 ...
- django通过ajax请求接口返回多条数据,并动态生成表格,请求表单后将表格数据并入库
一.最近在做接口相关的开发,需求是这样的,通过一个接口所需要传递的参数,调用接口后,处理接口响应的参数,返回多条数据,并动态生成表格,请求表单后将表格的数据入库,下面是我改过的代码,跟实际代码有些出入 ...
- 服务器 战地4 无限载入,战地4卡在loading界面无限载入_战地4无限载入解决方法...
战地4卡在loading界面无限载入_战地4无限载入解决方法 首先说下卡在loading界面的问题,所谓卡loading界面,就是地图载入画面过后,黑屏,画面右上角有loading图标闪烁,可以听到声 ...
- jquery发送Ajax请求预处理和后置处理
在项目中遇到了一个需要jquery发送请求统一进行配置的问题,在此记录一下 if(window.jQuery){// ajax预处理jQuery(document).bind("ajaxSe ...
- JavaScript HTTP请求
JavaScript HTTP请求 POST方式 POST方式 var httpRequest = new XMLHttpRequest();//第一步:创建需要的对象 httpRequest.ope ...
最新文章
- Linux安装Nodejs
- UNION 与 UNION ALL
- php如何防止超发,PHP+redis实现的限制抢购防止商品超发功能详解
- LEX和YACC的使用(例子)
- php可以用水晶报表吗,什么是水晶报表与水晶报表功能分析
- OpecCV颜色分割
- jsp页面获取系统的日期时间
- 编码的法则:c++程序员不可不知的101条经验
- ios 点击出现另外一套tabbar_iOS 点击UITabBar触发刷新
- h5带mysql数据库的留言板_html5实现留言板的代码实例分享
- mysql可以考什么证_MySQL有没有什么比较权威的认证考试呢?
- IPv4与IPv6地址转换
- python绘制多段数码管
- 【转】金蝶EAS BOS工作流开发(附带JAVA脚本)
- 银行客户违约信息分析(数据挖掘)
- 鬼故事~ 媚娘[完结版]
- Harbor项目高手问答及赠书活动火热进行中
- ThinkPHP6 验证码(点击刷新)
- equest,response,session,cookie,application
- 修改iOS工程的Organization Name