2011-05-30 102 views
7

我一直在尋找一些關於這方面的東西,我有微弱的回憶,我已經看到了p2p在flash或silverlight中的演示文稿,如果有任何好的方法從javascript中使用它,我會流浪。p2p網頁編程

我想將服務器作爲客戶端連接器,而不是作爲 數據的代理。任何庫或網站做了這樣的事情,你可以指向。谷歌並沒有給我太多。

我不需要一個簡單的解決方案,只是從某個地方開始。

+1

你需要一個代理服務器,如果你打算在互聯網上使用它。大多數電腦都在NAT後面。 – Fox32 2011-05-30 20:50:25

+4

Javascript也有一個同源安全策略 - 腳本不能與任何它想要的主機通信,只有它的原始服務器和可能在同一個域中的其他服務器。即使你在JS中有一個P2P客戶端,你仍然需要一個服務器端代理來使它工作。 – 2011-05-30 20:57:10

+0

但有幾種工具可以通過代理服務器在JavaScript中創建p2p連接。 – Fox32 2011-05-30 21:00:26

回答

4

你正在尋找被稱爲Adobe Cirrus技術(以前稱爲Adobe狀態)

這使您可以使用Flash播放器來實現P2P通信。這將是一個簡單的事情,然後從JavaScript調用。

+0

thx湯姆我會看看這個:D – megakorre 2011-06-08 23:14:08

+0

您是否正在尋找一個基於瀏覽器的解決方案? – Tom 2011-06-09 20:35:04

0

我還沒有嘗試過,但anansi可能是一個很好的起點。需要Node.js

「謝謝」部分中的twolinks絕對值得一看。

2

這可能不涉及確切,但是的WebSockets可能是你一些有趣的事情,如果你希望它是iPhone/iPad的兼容

http://en.wikipedia.org/wiki/WebSockets

http://net.tutsplus.com/tutorials/javascript-ajax/start-using-html5-websockets-today/

+0

正是我所想的。我肯定會研究node.js,因爲它是a)基於事件和b)非常可擴展的。 – Betamos 2011-06-09 19:55:27

+0

但我認爲OP正在尋找在*瀏覽器*中運行的東西。 – Tom 2011-06-09 20:29:22

+0

我認爲phpWebsockets並不難實現,但我個人還沒有做到。 – mazlix 2011-06-09 21:24:08

3

如果你想從現有的學習代碼,我幾個月前開始使用RTMFP(Adobe Cirrus)作爲連接到服務的對等方之間的通信。如果你想看看它,它可用here。到目前爲止,我還沒有時間做太多的文檔,但如果你有問題,你可以在github上向我詢問。

如果你想從一個較小的例子開始,我已經完成了一個JS interface,使您能夠使用Javascript與P2P連接。

9

今天,我發現這對Hackernews

http://peerjs.com/

在他們的網頁,他們陳述:

PeerJS封裝了WebRTC實現,以提供完整的,可配置且易於使用的點對點數據API。每個對等體只需提供一個標識符,使用相同API密鑰 的其他對等體可以連接到該標識符。

聽起來真的很有趣,我要試試這個:d