Код: Выделить всё
WebSocketServer mWebSocketServer;
try {
// Creation of server, ipWebSocketAddr = "ws://192.168.5.73/posttest.html
// mcintWebSocketPort = 443
mWebSocketServer = new WebSocketServer(ipWebSocketAddr, mcintWebSocketPort);
mWebSocketServer.AddWebSocketService("/clsQuintexMsg");
}
catch (Exception ex)
{
FrmMain.UpdateTaskbar(ex.ToString());
}
Код: Выделить всё
try {
webSocket = new WebSocket(cstrServerSocketIP);
//Setup timeout timer to timeout if webSocket does not connect
tmrCheckWebSocket = setInterval(function() {
var strMsg = "Checking webSocket (" + cstrServerSocketIP + "), ";
if (typeof webSocket == "object" &&
typeof webSocket.readyState == "number") {
if (webSocket.readyState == WebSocket.CONNECTING) {
strMsg += "connecting";
} else if (webSocket.readyState == WebSocket.OPEN) {
strMsg += "open (connected)";
} else if (webSocket.readyState == WebSocket.CLOSING) {
strMsg += "closing";
} else if (webSocket.readyState == WebSocket.CLOSED) {
strMsg += "closed";
}
} else {
strMsg += "not a valid websocket!";
}
DebugMsg(strMsg);
}, cintCheckWebSocketInterval);
webSocket.onclose = (event) => {
var strReason = "";
if (typeof event == "object") {
if (typeof event.code == "number") {
strReason += "code[" + event.code + "]";
var strError = cobjWebSocketErrors[event.code];
if (typeof strError == "string") {
strReason += ":" + strError;
}
}
if (typeof event.reason == "string" && event.reason.length > 0) {
if (strReason.length > 0) {
strReason += ", ";
}
strReason += "reason:\"" + event.reason + "\"";
}
}
DebugMsg("webSocket.onclose " + strReason);
};
webSocket.onerror = (event) => {
DebugMsg("webSocket.onerror" + ((typeof event == "object" && typeof event.data != "undefined") ? ":" + String(event.data) : ""));
};
webSocket.onmessage = (event) => {
DebugMsg("webSocket.onmessage");
if (event.data instanceof ArrayBuffer) {
console.lob("Received ArrayBuffer");
console.lob(event.data);
}
webSocket.close();
};
webSocket.onopen = () => {
DebugMsg("webSocket.onopen");
};
//Set-up timer to send requests for data updates
InstallServiceTimer(cintServiceRequestInterval);
} catch (e) {
DebugMsg(e);
}
Код: Выделить всё
System.InvalidOperationException
HResult=0x80131509
Message=There is no server certificate for secure connection.
Source=websocket-sharp
StackTrace:
at WebSocketSharp.Server.WebSocketServer.start()
at WebSocketSharp.Server.WebSocketServer.Start()
at CheetahCS.clsServer..ctor(String strRoot, String strDefault, Int32 intWWWPort, Int32 intWebSocketPort) in clsServer.cs:line 131
This exception was originally thrown at this call stack:
WebSocketSharp.Server.WebSocketServer.start()
WebSocketSharp.Server.WebSocketServer.Start()
clsServer.clsServer(string, string, int, int) in clsServer.cs
Похоже, в коде WebSocketSharp есть ошибка при передаче IP-адреса и порт отдельно, по умолчанию используется безопасное соединение. Я изменил приведенное выше, чтобы использовать строку с префиксом ws://address:443, теперь это не исключение.
Подробнее здесь: https://stackoverflow.com/questions/792 ... connecting