<%@ page import="com.yc.utils.SessionKey" %>
|
<%@ page language="java" pageEncoding="UTF-8" %>
|
<%
|
String host = request.getServerName() + (request.getServerPort()==80?":80":":"+request.getServerPort() );
|
%>
|
<!DOCTYPE html>
|
<html>
|
<head>
|
<script type="text/javascript" src="/js/jquery-1.4.4.min.js"></script>
|
<script type="text/javascript" src="/js/hotkey.js"></script>
|
<title>WebSocket-总部端</title>
|
</head>
|
<body>
|
Welcome<br/>
|
|
<button onclick="login()">登录</button><br/>
|
<br/>
|
<button onclick="closeWs()">退出</button>
|
<br/>
|
<br/>
|
<button onclick="send1()">1,同意授权</button>
|
<button onclick="send3()">5,确认授权</button>
|
<div id="message"></div>
|
</body>
|
|
<script type="text/javascript">
|
|
|
var groupid;
|
var dbid;
|
var websocket = null;
|
var websocket1 = null;
|
var to="";
|
var host=document.location.host;
|
var obj={};
|
function login() {
|
// $.ajax({
|
|
// url: "http://yingchen.onbus.cn:9001/wslogin.do" ,
|
// success: function (result) {
|
dbid=82;
|
if ('WebSocket' in window) {
|
websocket = new WebSocket("ws://" + host + "/ws/websocketMessage/z9000082/<%=session.getAttribute(SessionKey.DATA_BASE_ID)%>/<%=session.getId()%>/2");
|
}
|
else {
|
alert('当前浏览器 Not support websocket')
|
}
|
//连接发生错误的回调方法
|
websocket.onerror = function () {
|
setMessageInnerHTML("WebSocket连接发生错误");
|
};
|
|
//连接成功建立的回调方法
|
websocket.onopen = function () {
|
setMessageInnerHTML("WebSocket连接成功");
|
}
|
|
//接收到消息的回调方法
|
websocket.onmessage = function (event) {
|
obj=JSON.parse(event.data);
|
//operCode=0表示客户初始化返回的信息,需要保存返回的groupid,作为以后发消息的groupid的值
|
console.log(">>>>>>>>>>>"+event.data);
|
setMessageInnerHTML(event.data);
|
|
// if(obj.state==0) {//0表示正常消息,-1表示出错消息,需要处理
|
// if (obj.info.operCode == 0) {
|
// groupid = obj.info.groupId;
|
// dbid=obj.info.dbid;
|
// }
|
// }
|
// if(obj.info.msgType=="text")
|
//
|
// setMessageInnerHTML(event.data);
|
// else
|
// setMessageImg(event.data);
|
}
|
|
|
//连接关闭的回调方法
|
websocket.onclose = function () {
|
setMessageInnerHTML("WebSocket连接关闭");
|
}
|
|
//监听窗口关闭事件,当窗口关闭时,主动去关闭websocket连接,防止连接还没断开就关闭窗口,server端会抛异常。
|
window.onbeforeunload = function () {
|
// closeWebSocket();
|
}
|
}
|
//});
|
//}
|
|
|
//将消息显示在网页上
|
function setMessageInnerHTML(innerHTML) {
|
document.getElementById('message').innerHTML += innerHTML + '<br/>';
|
}
|
|
//关闭WebSocket连接
|
function closeWebSocket() {
|
websocket.close();
|
}
|
function send1() {
|
if (websocket.readyState == 1) { //0-CONNECTING;1-OPEN;2-CLOSING;3-CLOSED
|
var info= {};
|
info.setup=1;
|
info.dbId=532
|
info.userCode='z9000082'
|
info.msgType=6008
|
info.setup=1
|
info.companyName='标准版V2'
|
info.userName='002'
|
info.authCode='abcewf'
|
info.authType=110203
|
var obj1={};
|
obj1.msg=JSON.stringify(info);
|
obj1.msgType=6008;//消息类型
|
if(info){
|
websocket.send(JSON.stringify(obj1));
|
}
|
document.getElementById("text").value="";
|
} else {
|
alert("connect fail!");
|
}
|
}
|
function send3() {//离线再进入时调用
|
if (websocket.readyState == 1) { //0-CONNECTING;1-OPEN;2-CLOSING;3-CLOSED
|
var info=JSON.parse('{"ownCompanyName":"代理商标准版V2(总公司)","authenticatedCode":"abcewf","msgLocation":"content","companyName":"企业标准版V2","ownLogo":"http://demo.onbus.cn:9001/images/login/logo.png","domain":"http://demo.onbus.cn:9001","dbId":532,"logo":"http://demo.onbus.cn:9001/images/login/logo.png","setup":4,"userName":"002","authType":110203,"userCode":"z9000082"}');
|
info.setup=5;
|
var obj1={};
|
obj1.msg=JSON.stringify(info);
|
obj1.msgType=6008;//消息类型
|
if(info){
|
websocket.send(JSON.stringify(obj1));
|
}
|
document.getElementById("text").value="";
|
} else {
|
alert("connect fail!");
|
}
|
}
|
//发送消息
|
function send2() {
|
if (websocket.readyState == 1) { //0-CONNECTING;1-OPEN;2-CLOSING;3-CLOSED
|
var info=obj.info;
|
info.setup=5;
|
|
var obj1={};
|
obj1.msg=JSON.stringify(info);
|
obj1.msgType=6008;//消息类型
|
if(info){
|
websocket.send(JSON.stringify(obj1));
|
}
|
document.getElementById("text").value="";
|
} else {
|
alert("connect fail!");
|
}
|
}
|
//发送消息
|
function closeWs() {
|
closeWebSocket();
|
// if (websocket.readyState == 1) { //0-CONNECTING;1-OPEN;2-CLOSING;3-CLOSED
|
// if(obj.msg!=undefined){
|
// var msg=JSON.parse(obj.msg);
|
// obj.msg=msg;
|
// msg.setup=3;
|
// }else {
|
// //扫二维码返回的内容
|
// obj.msg="{\"ownCompanyName\":\"盈晨软件\",\"msgType\":6008,\"companyName\":\"常州市巴士软件有限公司\",\"dbId\":\"338\",\"domain\":\"http://onbus.onbus.cn:9010\",\"ownLogo\":\"http://yingchen.onbus.cn:9010/images/login/logo.png\",\"logo\":\"http://onbus.onbus.cn:9010/images/login/logo.png\",\"setup\":1,\"userName\":\"余小春\",\"userCode\":\"z9000082\"}"
|
// //obj.setup=1;
|
// }
|
// obj.msgType=6008;//消息类型
|
// if(obj){
|
// websocket.send(JSON.stringify(obj));
|
// }
|
// document.getElementById("text").value="";
|
// } else {
|
// alert("connect fail!");
|
// }
|
}
|
</script>
|
</html>
|