问题标签 [websocket]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - 无闪存套接字的网络全双工通信
我正在帮助开发的一个 Web 应用程序面临一个众所周知的问题:我们希望能够让用户知道可能随时发生的各种事件等,基本上是随机发生的,并相应地更新他们的视图。本质上,我们需要允许服务器将请求推送到单个客户端,而不是客户端向服务器请求。
我知道 WebSockets 是为了解决这个问题;但是,在对它们进行了一番查看之后,我了解到 a) 目前很少有 Web 浏览器提供本机 websocket 支持;b)为了解决这个问题,您可以使用闪存套接字或某种 AJAX 长轮询;c) 必须使用特殊的 websockets 服务器。
现在,我们想提供没有 Flash 的服务。并且任何类型的服务器都必须具有某种负载平衡功能,或者至少有一些可以为它们进行负载平衡的软件。
截至 2008 年,每个人都在说基于 Comet 的解决方案(例如 Bayeux)是解决这类情况的方法。然而,从那时起,各种协议似乎并没有投入太多的工作——这最终导致了这个问题。
巴约风味的彗星仍然是此类工作的正确工具吗?如果不是,那是什么?
html - HTML 5 中的握手
在 Websockets 中,这是一个令人兴奋的 HTML 5 新概念,有一个特定的功能 - WebSockets 服务器和客户端之间的握手。谁能解释一下这是干什么用的??
谢谢你!!
javascript - 网络套接字问题
我有几个关于Web Sockets的问题。
最新的 Firefox 4.0 nightlies 支持 Web Sockets。Webkit(Chrome 4 + Safari 4/5)也是如此。根据微软的说法(在稳定版本之前),Internet Explorer 9 应该在某个时候具有 Web Sockets。
无论如何,我的问题是:
我正在构建一个 JavaScript 管理界面来管理网站。如果我告诉你我不需要关心浏览器的兼容性,我是否应该使用 Web Sockets 而不是 XMLHttpRequest 进行客户端-服务器通信?
与使用 XMLHttpRequest 的通常情况相比,Web 套接字会导致更快的保存、删除和更新调用吗?请求会更即时吗?
我知道 HTML5
navigator.online
和window.addEventListener('offline', ...)
,但是使用 Web 套接字(在连接丢失时),我是否能够更准确、更快地检测连接问题?我的意思是,当我关闭 Internet 连接或使用防火墙阻止它时,Firefox 似乎仍然声明这navigator.online
是真的。使用 Web Sockets,似乎与服务器的连接会立即丢失,因此,我可以更准确地检测连接问题吗?我可以用纯PHP 支持 Web Sockets 服务器端吗,这样代码就可以与其他 Web 服务器移植(无需安装任何 Apache 模块或进行其他自定义)。我想将软件分发到几个地方,而不必要求人们将各种模块安装到他们的 HTTPD 左右。
我希望你能尽可能多地回答这些问题。我真的对答案很感兴趣。
java - websockets 和 java servlet
有谁知道是否有一个好的(好的是足够稳定的,并且是开源的)webSocket servlet 实现?可能符合草案规范 76(最新版本)的那个。
flash - 将 WebSocket 与 Flash 一起使用?
我找到了用于在 Flash 中运行 WebSocket 的web-socket-js。
如果我在 Flash 下运行 WebSocket,所有安装了 Flash 播放器的浏览器都支持吗?
frameworks - websocket + node.js + 后备框架
用于 websockets + fallbacks 的最佳框架是什么。
我实际上只知道 Socket.IO,还有一些其他的。
谢谢。
javascript - WebSocket 事件未触发
我正在尝试使用 HTML5/JS API 创建一个简单的 WebSocket 示例。根据我在服务器上追踪的内容,似乎套接字正在连接,但没有任何事件触发(onopen
, onmessage
,onclose
等)。我是一名 Flash 开发人员,所以我不太擅长调试 JavaScript,我希望有人能帮助我。这是我正在使用的客户端代码:
这是我的套接字服务器代码(在 Flash 中工作得很好,但这可能没有任何意义):
node.js - Node.js,WebSocket 位置问题?
我使用 Node 监听端口 8000,localhost 创建了一个服务器。验证它运行正常,但我无法访问客户端(Chrome 5)上的 WebSocket。尝试了各种 Git repos、node + websocket、socketIO、文章等的几种实现。没有。
没有端口冲突(sudo lsof -i tcp);试过 server.listen(8000, "*"); 指向 ws = new WebSocket("ws://:8000/test"); Debian Lenny,Apache22 节点 v0.1.98-31-g1c6671a
我在想可能与 url rewrite 有冲突。或可能的权限。有任何想法吗?
ajax - 哪个更快 - WebSockets 或 Ajax?
我敢打赌 WebSocket 会快得多。因此,如果我想连续使用大量ajax,是否推荐使用 WebSockets 作为替代方案?
html - HTML5:最新的 WebSockets
有人读过 Hickson 2010 年 5 月的 draft-hixie-thewebsocketprotocol-76 WebSocket 协议吗?
这是 .htm 文件的来源:
如果我有一个监听 8181 的 TCP 端口,这是我在 Chrome 中加载上述 .htm 文件时收到的请求:
(其中 [\n] 是 CRLF 字符。)
我应该回到这个握手开瓶器?Draft-hixie-thewebsocketprotocol-76 显示:
但是,此响应会导致socket.onclose
触发。