Will HTML5 allow web apps to make peer

Is it possible to create a web app that, with the help of a central server, could create direct connections with other users of the same web app? I'm imagining a process similar to UDP hole punching.

I've read about the new WebSockets API in HTML5, but it appears you must initiate the connection with a WS-compatible server before the fully-duplexed connection can begin. I'm thinking moreso about a process to make direct connections between clients, with a server getting involved only in the initial handshake.

NOTE: Java applets don't count. I'm interested only in standard browser technologies.


Instead of intelligent guesses, here is an informed answer:

HTML 5 plans to allow peer to peer connections from javascript, but these connections WILL NOT BE RAW TCP.

The complete spec can be found at http://dev.w3.org/html5/websockets/

jrh

EDIT: with specific reference to peer to peer connections, check out these links:

  • Regarding peer to peer connections: http://www.w3.org/TR/2008/WD-html5-20080122/#peer-to-peer
  • Regarding broadcast connections to the local network: http://www.w3.org/TR/2008/WD-html5-20080122/#broadcast
  • Regarding TCP connections (in the encoded protocol): http://www.w3.org/TR/2008/WD-html5-20080122/#tcp-connections
  • Complete proposed spec: http://www.w3.org/TR/2008/WD-html5-20080122/#network
  • Its important to note that the capabilities are still being negotiated. It will be nice to be able to create "local chat" web apps :)

    jrh


    UPDATE 10/17/2012: This functionality now exists in Chrome Stable v22. In order to use this functionality in Chrome, one must enable two flags in chrome://flags:

  • Enable MediaStream
  • Enable PeerConnection
  • Then you can visit the AppRTC Demo Page to try out the demo. See the WebRTC - Running the Demos page for more detailed instructions on setting up Chrome to use the peer to peer functionality and enabling device capture.


    UPDATE: The engineers at Ericcson Labs have a proof of concept in a WebKit build that does HTML5 Peer to Peer Conversational Video.

    They have demonstrations in their blog of the technology in action, as well as diagrams and explanations on how the technology will work.

    They are working on getting this stabilized and committed to the WebKit repository.


    Yes, finally.

    As of this writing (2017), WebRTC is now a standard part of most modern browsers (around 70% of those in use), and allows for multimedia streaming, peer-to-peer, and hole-punching.

    Docs, sample code, and live examples for WebRTC can be found at html5rocks.com.

    According to caniuse.com and html5rocks.com, the following browsers support WebRTC:

    Full support: Edge 14, Firefox 22, Firefox Android 55
    Partial support: Android Browser 56, Chrome 20, Chrome Android 29, Edge 12, Firefox 17, Opera 18, Opera Android 20, Opera Mobile 12, UC Browser Android 11.4
    Future support (Q3 2017): Chrome for iOS 11, Safari 11 for iOS 11 and OS X 10.11
    No support: IE, IE Mobile, Opera Mini

    The saturation rate of WebRTC is limited on Apple devices, since Safari 11 is not yet released and requires iOS 11 or OS X 10.11. Though projecting from past upgrade trends, WebRTC should be available on around 75% of iOS devices by 2018, and 100% by 2020.

    链接地址: http://www.djcxy.com/p/7770.html

    上一篇: 使用HTML5 / Javascript来生成和保存文件

    下一篇: HTML5将允许Web应用程序进行点对点