如何在JavaScript \ HTML中使用套接字?
可能会使用一些很酷的HTML5?
图书馆?教程?博客文章?
如何在JavaScript \ HTML中使用套接字?
可能会使用一些很酷的HTML5?
图书馆?教程?博客文章?
Answers:
如何在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);
};
您将需要在服务器端使用专门的套接字应用程序来建立连接并对其进行处理。这通常不是从Web服务器的脚本界面执行的操作。但是它是一个相对简单的协议; 我的基于Python SocketServer的点头只是几页代码。
无论如何,它实际上并不存在。无论是JavaScript方面的规范还是网络传输的规范,都没有明确规定,并且没有浏览器支持。
但是,可以使用Flash(如果可用)为脚本提供后备功能,直到WebSocket广泛可用为止。Gimite的web-socket-js是这样的一个免费示例。但是,那时您与Flash Sockets受相同的限制,即您的服务器必须能够根据请求向套接字端口吐出跨域策略,并且代理/防火墙经常会遇到困难。(Flash套接字是直接制成的;对于没有直接公共IP访问权限的人,他们只能通过HTTP代理从网络中退出,它们将无法工作。)
除非您确实需要低延迟的双向通信,否则最好还是坚持一下XMLHttpRequest
。