summaryrefslogtreecommitdiffstats
path: root/webapp/client
diff options
context:
space:
mode:
authorJoram Wilander <jwawilander@gmail.com>2016-11-10 09:22:06 -0500
committerHarrison Healey <harrisonmhealey@gmail.com>2016-11-10 09:22:06 -0500
commit8c76560b4849f8d1fdc3c3f1c2f1877459a30fca (patch)
treed373ee86ac86f6613f24f2c82ca09aa6144f5c33 /webapp/client
parent39675afab4ba6e22b834aa6ff8d7dab2a35c5a8d (diff)
downloadchat-8c76560b4849f8d1fdc3c3f1c2f1877459a30fca.tar.gz
chat-8c76560b4849f8d1fdc3c3f1c2f1877459a30fca.tar.bz2
chat-8c76560b4849f8d1fdc3c3f1c2f1877459a30fca.zip
Fix websocket on old versions of IE11 (#4501)
Diffstat (limited to 'webapp/client')
-rw-r--r--webapp/client/websocket_client.jsx11
1 files changed, 9 insertions, 2 deletions
diff --git a/webapp/client/websocket_client.jsx b/webapp/client/websocket_client.jsx
index 760c62b59..35be5c3df 100644
--- a/webapp/client/websocket_client.jsx
+++ b/webapp/client/websocket_client.jsx
@@ -8,6 +8,7 @@ const MAX_WEBSOCKET_RETRY_TIME = 300000; // 5 mins
export default class WebSocketClient {
constructor() {
this.conn = null;
+ this.connectionUrl = null;
this.sequence = 1;
this.connectFailCount = 0;
this.eventCallback = null;
@@ -18,16 +19,22 @@ export default class WebSocketClient {
this.closeCallback = null;
}
- initialize(connectionUrl, token) {
+ initialize(connectionUrl = this.connectionUrl, token) {
if (this.conn) {
return;
}
+ if (connectionUrl == null) {
+ console.log('websocket must have connection url'); //eslint-disable-line no-console
+ return;
+ }
+
if (this.connectFailCount === 0) {
console.log('websocket connecting to ' + connectionUrl); //eslint-disable-line no-console
}
this.conn = new WebSocket(connectionUrl);
+ this.connectionUrl = connectionUrl;
this.conn.onopen = () => {
if (token) {
@@ -150,7 +157,7 @@ export default class WebSocketClient {
if (this.conn && this.conn.readyState === WebSocket.OPEN) {
this.conn.send(JSON.stringify(msg));
- } else if (!this.conn || this.conn.readyState === WebSocket.Closed) {
+ } else if (!this.conn || this.conn.readyState === WebSocket.CLOSED) {
this.conn = null;
this.initialize();
}