<%@ 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="closeWebSocket()">退出</button>
|
<br/>
|
<br/>
|
<button onclick="send2()">3.同意授权</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);
|
}
|
function setMessageImg(data){
|
var obj=JSON.parse(data);
|
var img ="<img src='"+ obj.info.picUrl+"'/>";
|
document.getElementById('message').innerHTML += img + '<br/>';
|
console.log(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 send2() {//离线再进入时调用
|
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":"","domain":"http://demo.onbus.cn:9001","dbId":583,"logo":"http://demo.onbus.cn:9001/images/login/logo.png","setup":2,"userName":"002","authType":110302,"userCode":"z9000082"}');
|
info.setup=3;
|
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!");
|
}
|
}
|
</script>
|
</html>
|