websocket.js 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. self.importScripts("helper.js");
  2. var parameters = GetRequest();
  3. var ip = parameters["ip"];
  4. var socketURL = "ws://192.168.198.82:9100/card?cardIp=" + ip;
  5. doConnect();
  6. function doConnect() {
  7. var ws = new WebSocket(socketURL);
  8. ws.binaryType = 'arraybuffer';
  9. ws.onclose = function (e) {
  10. alert("websocket连接断开,准备重连");
  11. doConnect();
  12. }
  13. ws.addEventListener('open', function (event) {
  14. ws.send(ConfigChannel("RK3923C1201900139"));
  15. var buffer = RequestIFrame();
  16. ws.send(buffer);
  17. });
  18. self.addEventListener('message', function (e) {
  19. ws.send(e.data);
  20. }, false);
  21. ws.addEventListener('message', function (event) {
  22. var input = new Uint8Array(event.data);
  23. if (input[0] == 0xff) {
  24. self.postMessage(input);
  25. } else {
  26. self.postMessage(input);
  27. }
  28. });
  29. }
  30. function GetRequest() {
  31. var url = location.search; // 获取url中"?"符后的字串
  32. var obj = new Object();
  33. if (url.indexOf("?") != -1) {
  34. var str = url.substr(1);
  35. strs = str.split("&");
  36. for (var i = 0; i < strs.length; i++) {
  37. obj[strs[i].split("=")[0]] = (strs[i].split("=")[1]);
  38. }
  39. }
  40. return obj;
  41. }