套接字在调试模式下具有不同的行为

时间:2019-05-17 08:48:41

标签: javascript c# visual-studio sockets websocket

作为一个简短的解释:我用C#编写了一个套接字。它通过IP协议运行。该应用程序在后台运行,并等待来自Javascript客户端的连接。在我的网站上,我有连接到插座的按钮。

现在是我的问题:如果我以调试版本启动程序,那么一切都将与套接字建立连接,并向客户端提供反馈。但是,如果我使用发行版,则应用程序崩溃的原因并不明显。

我的问题是,如果我以调试版本或发行版本运行应用程序,为什么会有区别?

这是我启动套接字的方法:

serverSocket.Bind(new IPEndPoint(IPAddress.Any, freePort));
serverSocket.Listen(128);
serverSocket.BeginAccept(null, 0, OnAccept, null);
serverSocket.SetSocketOption(SocketOptionLevel.Socket, SocketOptionName.ReuseAddress, true);

这是网站上一些调用套接字的代码:

function calltoSocket(callNumber, callLogNo) {
var ws = new WebSocket("ws://localhost:8081/service");
ws.onopen = function () {
    var obj = { method: "call", number: callNumber, logNo: callLogNo};
    var myJSON = JSON.stringify(obj);
    ws.send(myJSON);
    document.getElementById('StatusId').value = 'Call';
};

到目前为止,我收到的消息甚至没有触发“ ws.onopen = function ...”行。

感谢每一个反馈和提示

0 个答案:

没有答案