【问题标题】:HTML5 websocket connection to c# tcp socketHTML5 websocket 连接到 c# tcp 套接字
【发布时间】:2012-11-20 06:39:34
【问题描述】:

我正在尝试使用http://www.tutorialspoint.com/html5/html5_websocket.htm 中示例中的 HTML5 连接到 C# TCP 服务器

<!DOCTYPE HTML>
<html>
<head>
<script type="text/javascript">
function WebSocketTest()
{
    if ("WebSocket" in window)
    {
     alert("WebSocket is supported by your Browser!");
     // Let us open a web socket
     var ws = new WebSocket("ws://localhost:9998/echo");
     ws.onopen = function()
     {
        // Web Socket is connected, send data using send()
        ws.send("Message to send");
        alert("Message is sent...");
     };
     ws.onmessage = function (evt) 
     { 
        var received_msg = evt.data;
        alert("Message is received...");
     };
     ws.onclose = function()
     { 
        // websocket is closed.
        alert("Connection is closed..."); 
     };
    }
    else
    {
     // The browser doesn't support WebSocket
     alert("WebSocket NOT supported by your Browser!");
    }
}
</script>
</head>
<body>
<div id="sse">
<a href="javascript:WebSocketTest()">Run WebSocket</a>
</div>
</body>
</html>

TCP 服务器运行在本地机器的 4530 端口上。所以我改变了

var ws = new WebSocket("ws://localhost:9998/echo"); 

var ws = new WebSocket("ws://localhost:4530");

当我运行页面时,我收到消息 WebSocket is supported by your Browser! 并且它挂在那里。有什么帮助吗?

【问题讨论】:

  • 您的服务器是否支持正确的WebSocket 协议?这可能取决于您使用的browser
  • 你的意思是tcp服务器也应该支持Websocket?就浏览器而言,消息WebSocket is supported by your Browser!够不够?
  • Websockets 在 TCP 之上使用了一种特殊的协议,包括一些额外的连接握手。它不像普通的套接字,你可以连接并开始通信。
  • @Mika,请看我之前评论中的链接(浏览器一词)。在那里你会看到不同的浏览器使用不同的 websocket 协议。您的测试只是检查浏览器是否完全支持 WebSockets,但没有说明所使用的协议版本
  • 好的。感谢您消除我的一些误解。

标签: c# html tcp websocket


【解决方案1】:

Mika,看看http://xsockets.net,它是一个易于上手的 dotnet (c#) 实时框架,可以在 Nuget 上找到。只需在 PM 控制台中点击 Install-Package XSockets。

框架处理 6455 规范以及它确实执行“旧”Hybi00 协议(草案)。

它有一个类似 jQuery 的客户端 JavaScript 库,服务器端 API 让人想起 MVC。

【讨论】:

    猜你喜欢
    • 2015-10-04
    • 1970-01-01
    • 1970-01-01
    • 2011-04-14
    • 1970-01-01
    • 2011-08-31
    • 2023-03-21
    • 2013-05-21
    相关资源
    最近更新 更多