1 <script> 2 $(function(){ 3 4 $('#btPrint').click(function() 5 { 6 var data = new Object; 7 data.P_PARA1 = $("#barcode").val(); 8 data.P_PARA2 = $("#prod_name").val(); 9 data.FILE_NAME = "B"; 10 data.PRINT_REPEAT = $("#num").val(); 11 var sTmp = JSON.stringify(data); 12 alert(sTmp); 13 14 //判断浏览器是否支持websocket 支持返回true 15 alert((typeof WebSocket) != 'undefined'); 16 17 var ws = new WebSocket("ws:\127.0.0.1:10086\"); 18 19 //【用于指定连接成功后的回调函数】 20 ws.onopen = function (evt) { 21 console.log("Connection open ..."); 22 alert("connected!"); 23 ws.send(sTmp); 24 }; 25 //[【于指定连接关闭后的回调函数。】 26 ws.onclose = function (evt) { 27 alert("close"); 28 console.log("Connection closed."); 29 }; 30 ws.onmessage = function(ev){ //获取后端响应 31 alert(ev.data); 32 }; 33 ws.onerror = function(ev){ 34 alert(JSON.stringify(ev)); 35 }; 36 }); 37 38 }); 39 </script>
今天想通过js用websocket的方式连接BarEasy的打印服务,尝试很久还是没有成功。
后来百度了一下,发现websocket其实不是socket,它一定要先和web服务器进行交互才行,所以想通过websocket绕过服务器直接和客户机的电脑进行socket通讯是不行的。