阅读更多

10顶
0踩

互联网

转载新闻 Google Chrome现在支持Web Sockets了

2009-12-11 09:58 by 见习记者 cryolite 评论(4) 有9970人浏览
Web Sockets Now Available In Google Chrome

从Chrome 4.0.249.0开始支持Web Sockets,而且缺省设置为开启。Web Socket是Web上的TCP,为Web应用提供双向通信的下一代技术,是Web Applications 1.0标准的一部分。

Web Sockets要比现在广泛使用的XMLHttpRequest简单,通过XHR进行双向通信需要一些特别的技巧(例如长连接,轮询等),而Web Sockets为浏览器提供了真正的双向通信通道。一旦得到一个Web Socket连接,调用 send()方法就可以直接从浏览器发送数据到服务器,同时浏览器通过一个onmessage事件处理函数接收从服务器传来的数据。一个简单的例子:
if ("WebSocket" in window) {  
    var ws = new WebSocket("ws://example.com/service");  
    ws.onopen = function() {  
      // Web Socket is connected. You can send data by send() method.  
      ws.send("message to send"); ....  
    };  
    ws.onmessage = function (evt) { var received_msg = evt.data; ... };  
    ws.onclose = function() { // websocket is closed. };  
} else {  
    // the browser doesn't support WebSocket.  
} 



除了新的Web Socket API,浏览器使用新的web socket协议与服务器通信,该协议不是原始的TCP(因为它需要提供与浏览器来源相同的安全模型),也不是HTTP(因为它不同于HTTP的请求-响应模型)。与XHR不同的还有,该协议使用更少的带宽,(与HTTP相比,一旦连接建立,不需要再有消息头数据的交换)

要使用Web Socket(包括新的API,新的协议,更简单的编程模型,更高效的网络通信),我们还需要一个新的服务器实现,已有pywebsocket提供支持了,它能作为Apache扩展模块使用,也可以作为一个独立的服务器运行。

现在,至少可以通过Google Chrome和pywebsocket开始基于Web Socket的Web应用开发了。

不过Web Socket的协议还没有完全定稿,在IETF上仍在讨论。

Flash也实现了WebSockets的支持,因此实际上IE上也能使用,尽管是非原生支持。这里有个项目使其它浏览器通过Flash实现Web Socket的支持
10
0
评论 共 4 条 请登录后发表评论
4 楼 sirxenofex 2009-12-14 09:30
Google向Flash开炮了
3 楼 yiwenshengmei 2009-12-13 00:57
那么可以用这个来实现服务器推了咯?
2 楼 wyinwing 2009-12-12 12:41
牛B啊,期待中
1 楼 felsenlee 2009-12-11 23:57
具有革命意义,能更接近桌面应用了

发表评论

您还没有登录,请您登录后再发表评论

相关推荐

  • chrome_hosts_flush_util:适用于Web开发人员的applescript工具套件

    适用于OSX的Google Chrome浏览器41.0.2272.104(64位) 用法: 1.flush_chrome_sockets.applescript用于解决由于使用套接字池的Chrome修改了主机文件后,Chrome无法使用正确的主机的问题。 chmod 755 flush_...

  • Recordset.State 属性

    Recordset.State 属性2008-10-22 11:00以下摘自MSDN: State 属性 (ADO) 对所有可应用对象,说明其对象状态是打开或是关闭。 对执行异步方法的 Recordset 对象,说明当前的对象状态是连接、执行或是获取。 返回值 返回下列常量之一的长整型值。 常量 说明 adStateClosed 默认,指示对象是关闭的。 adStateOp

  • VC中使用ADO进行数据库开发的一些资料的整理

    1.导入ado库在StdAfx.h中,加入如下代码#import "c:/program files/common files/system/ado/msado15.dll"  /            no_namespace  rename("EOF","adoEOF") rename("BOF","adoBOF")2.Com 初试化在app的InitInstance中,加入AfxOl

  • Windows下C++访问数据库(ADO)

    C++利用ADO访问数据库还是比较方便的,我参考网上其它资料把ADO到一个类中,这样调用起来会更加的方便 这个类单线程访问数据库没有问题,提供了查询、增加、删除和修改的接口。 并行访问的话会有问题,另外不能频繁更新数据库,因为更新操作是要访外存的,它和程序后续工作是异步进行的。这里的问题我也会在今后继续完善。

  • ADO编程详解(C++)

    一、概述 ADO即Microsoft ActiveXData Object,是Microsoft继ODBC之后,基于OLE DB技术的一种数据库操作技术,使您能够编写通过OLE DB提供者对在数据库服务器中的数据进行访问和操作的应用程序。ADO同OLE DB、数据库之间的关系可以用下图来表示: 其主要优点是易于使用、高速度、低内存支出和占用磁盘空间较少。ADO支持用于建立基于客户...

  • Google Chrome现在支持Web Sockets

    Web Sockets Now Available In Google Chrome 从Chrome 4.0.249.0开始支持Web Sockets,而且缺省设置为开启。Web Socket是Web上的TCP,为Web应用提供双向通信的下一代技术,是Web Applications 1.0标准的一...

  • Web Sockets Now Available In Google Chrome

    从Chrome 4.0.249.0开始支持Web Sockets,而且缺省设置为开启。Web Socket是Web上的TCP,为Web应用提供双向通信的下一代技术,是Web Applications 1.0标准的一部分。 Web Sockets要比现在广泛使用的XMLHttpRequest...

  • 【电脑运用及修理】Google Chrome 浏览器

    Google Chrome 浏览器

  • 判断浏览器是否支持 Web Sockets

    Web Sockets 目前在各个浏览器到终端支持性并不好, 只有IE 10+, FF 34+, Chrome 31+, Safari 7.1+, Android Browser 4.4+ 才得到支持。 详情点击这里 通过何种方式检测? 比较简单到方式是直接判断全局...

  • 【C/C++笔记】之连接SQL Server

    基于ADO实现C++连接SQL Server数据库类 说明: 只需将这两个文件加入工程即可使用。 头文件 ///////////////////////////////////////////////////////////////// // SfmDBADOConn.h : interface of the CSfmDBADOConn class // // Description: ...

  • ado连接mysql状态的判断_ado 连接的问题

    环境:vc6.0 mdac2.8 ;问题:在成功建立连接后,如果连接由于网络故障或者数据库当机断开,如何保证能够在程序中判断并自动重新连接?这个问题在网上有很多人问,一直没有一个明确的答案。我测试了一下,总算找到一个基本可行的方法。_ConnectionPtr m_pConnection;m_pConnection.CreateInstance( __uuidof(Connection) );m_...

  • HTML 5 Web Sockets应用初探(3)

    第六步:JavaScript首先我们将代码放到jQuery 的 document....如果不支持,我们就添加一个链向Chrome浏览器页面的链接。 $(document).ready(function() { if(!("Web Socket" in window)){ $('#chatLo...

  • HTML 5 Web Sockets应用初探(4)

    第八步:关闭Socket关闭Socket操作相当简单,添加对断开连接按钮的click事件监听就可以。 $('#disconnect').click(function(){ socket.close(); }); 完整JavaScript代码 $...Web Socket" in window)...

  • WebSocket官方文档翻译——HTML5 Web Sockets:A Quantum Leap in Scalability for the Web

    HTML5 Web Sockets: A Quantum Leap in Scalability for the Web

  • Google Chrome 中的高性能网络

    Google Chrome 中的高性能网络 Google Chrome的历史和指导原则 原译注:这部分不再详细翻译,只列出核心意思。 驱动Chrome继续前进的核心原则包括: Speed:做最快的...

  • [译]Google Chrome中的高性能网络

    Google Chrome的历史和指导原则 【译注】这部分不再详细翻译,只列出核心意思。 驱动Chrome继续前进的核心原则包括: Speed: 做最快的(fastest)的浏览器。 Security:为用户提供最为安全的(most secure

Global site tag (gtag.js) - Google Analytics