0

HTML5将成为下一个超级明星。那么~~~如何在HTML5规范的WebSocket上使用新思路实现 AJAX ?谢谢....

4

1 回答 1

7

我认为您误解了 ajax 和 websockets。

所有互联网程序都使用一种称为套接字的特殊连接来运行(套接字也可以用于其他用途,但现在这并不重要)。例如,当您在 Chrome 中访问网页时,Chrome 会创建一个套接字并使用该套接字连接到网络服务器(还有其他步骤,但这是简单的解释)。

Ajax 是一种无需重新加载页面(或转到新页面)即可更新页面内容的方法,这对于动态内容很有用。Ajax 通过 DOM Api 中的 XMLHttpRequest 对象工作。当您发出 Ajax 请求时,您是在要求 Web 浏览器代表您启动一个新连接(Web 浏览器随后可能会创建一个它认为合适的新套接字)。

Websockets 是一种替代 API,它允许您更好地控制 Web 浏览器创建的套接字。从本质上讲,它是一种实现类似目的的替代技术。Ajax 只发送一个 HTTP 请求(通常是 post 或 get),并接收适当的响应,因此 websockets 的优势有 2 倍:

  1. Websockets 允许非 HTTP 传输(例如,流式 VoIP)。
  2. Websockets 允许双向传输(即服务器向客户端发出后续请求)。

这并不是说 Ajax 不再有用,而是说 Websockets 允许你做你不能用 Ajax 做的事情。

于 2010-04-02T01:30:35.103 回答