如何在JavaScript\HTML中使用套接字?

Rel*_*lla 82 html javascript html5 websocket

如何在JavaScript\HTML中使用套接字?

可能会使用一些很酷的HTML5?

图书馆?教程?博客文章?

bob*_*nce 75

如何在JavaScript/HTML中使用套接字?

在JS或HTML中没有使用通用套接字的工具.对于一个人来说,这将是一场安全灾难.

HTML5中有WebSocket.客户端非常简单:

socket= new WebSocket('ws://www.example.com:8000/somesocket');
socket.onopen= function() {
    socket.send('hello');
};
socket.onmessage= function(s) {
    alert('got reply '+s);
};
Run Code Online (Sandbox Code Playgroud)

您将需要服务器端的专用套接字应用程序来获取连接并对它们执行某些操作; 它不是你通常从Web服务器的脚本界面做的事情.然而,它是一个相对简单的协议 ; 我的基于Python SocketServer的端点只有几页代码.

无论如何,它还没有真正存在.JavaScript端规范和网络传输规范都没有被确定,没有浏览器支持它.

但是,您可以在可用的Flash中使用Flash为您的脚本提供后备,直到WebSocket广泛可用.Gimite的web-socket-js就是这样一个免费的例子.但是,您受到与Flash套接字相同的限制,即您的服务器必须能够根据请求向套接字端口吐出跨域策略,并且您通常会遇到代理/防火墙的问题.(Flash套接字是直接制作的;对于没有直接公共IP访问但只能通过HTTP代理离开网络的人,它们将无法工作.)

除非你真的需要低延迟的双向通信,否则你现在最好坚持下去XMLHttpRequest.


o.k*_*k.w 56

产品规格:

文章:

教程:

图书馆:

  • 是的,那个用户可能是Kaazing自己的Jonas Jacobi.经常会提到WebSocket的任何地方!我不太喜欢Kaazing TBH,坐在websocket.org上来推广看起来像是一个单片的,实际上没有自由的客户端和服务器解决方案,它已经支持WebSocket,看起来实际上只是它的一小部分.我不知道,这可能是一个很好的解决方案,但我对营销真的不太满意.[编辑,因此在okw的回复后] (3认同)

Ric*_*ket 46

我认为重要的是,现在这个问题已经超过1年了,Socket.IO已经问世了,现在似乎是在浏览器中使用套接字的主要方式; 据我所知,它也与Node.js兼容.

  • 好.已经差不多6年了.标准有变化吗? (12认同)