diff options
Diffstat (limited to 'mitmproxy/web/src/js/connection.js')
-rw-r--r-- | mitmproxy/web/src/js/connection.js | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/mitmproxy/web/src/js/connection.js b/mitmproxy/web/src/js/connection.js new file mode 100644 index 00000000..5e229b6e --- /dev/null +++ b/mitmproxy/web/src/js/connection.js @@ -0,0 +1,29 @@ + +var actions = require("./actions.js"); +var AppDispatcher = require("./dispatcher.js").AppDispatcher; + +function Connection(url) { + if (url[0] === "/") { + url = location.origin.replace("http", "ws") + url; + } + + var ws = new WebSocket(url); + ws.onopen = function () { + actions.ConnectionActions.open(); + }; + ws.onmessage = function (message) { + var m = JSON.parse(message.data); + AppDispatcher.dispatchServerAction(m); + }; + ws.onerror = function () { + actions.ConnectionActions.error(); + actions.EventLogActions.add_event("WebSocket connection error."); + }; + ws.onclose = function () { + actions.ConnectionActions.close(); + actions.EventLogActions.add_event("WebSocket connection closed."); + }; + return ws; +} + +module.exports = Connection;
\ No newline at end of file |