Клиент, использующий веб-сокет, чтобы не подключатьсяC#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 Клиент, использующий веб-сокет, чтобы не подключаться

Сообщение Anonymous »

Мой клиент просто показывает статус «закрыто». Мое приложение C# использует websocket-sharp:

Код: Выделить всё

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());
}
В моем JavaScript:

Код: Выделить всё

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);
}
Только что обнаружил, что в приложении C# при вызове start создается исключение:

Код: Выделить всё

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
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Веб-сокет сервера в js и клиентский веб-сокет в Java Android
    Anonymous » » в форуме JAVA
    0 Ответы
    25 Просмотры
    Последнее сообщение Anonymous
  • Сокет может подключаться к серверу, но не может писать() C++ - Linux
    Гость » » в форуме C++
    0 Ответы
    29 Просмотры
    Последнее сообщение Гость
  • Сокет может подключаться к серверу, но не может писать() C++ - Linux
    Гость » » в форуме Linux
    0 Ответы
    20 Просмотры
    Последнее сообщение Гость
  • Клиент веб-сокета PICO W/Micropython не может правильно отправлять данные на веб-сокет PHP
    Anonymous » » в форуме Php
    0 Ответы
    23 Просмотры
    Последнее сообщение Anonymous
  • Клиент веб-сокета PICO W/Micropython не может правильно отправлять данные на веб-сокет PHP
    Anonymous » » в форуме Php
    0 Ответы
    19 Просмотры
    Последнее сообщение Anonymous

Вернуться в «C#»