我正在嘗試創建一些基本的簡單遊戲實現(tic tac toe是開始的項目),它可以在不需要中央服務器的情況下通過互聯網播放。該頁面甚至不需要託管,可以在本地運行,也可以託管在Web服務器上。當託管遊戲時,頁面會通知主機他的IP地址,然後可以通過任何方法(電話,即時消息等)將其發送給朋友。該朋友可以將IP輸入或複製/粘貼到加入對話框中,並可以玩有問題的遊戲。我希望這兩方能夠在不安裝任何附加軟件的情況下做到這一點,並且不需要聯繫任何類型的中央服務器。如何以最小的開銷實現簡單的無服務器p2p瀏覽器瀏覽器消息傳遞?
我已經研究了很多涉及node.js,webrtc,websockets,flash,java等的潛在解決方案。其中每個解決方案都有與之相關的問題,例如需要中央服務器或需要客戶端必須下載他們計算機上尚未安裝的東西,或者只傳輸音頻和視頻,而不能用於發送數據信息。告訴某人他們需要下載java ..或者讓我用flash開發應用程序可能看起來微不足道,但這完全違背了我的最終目標。
如果它只是不可能做我想完全用javascript做的事情,那麼它是不可能的。但我不明白爲什麼它不可能,因爲瀏覽器可以自己發送和接收文本數據到解析爲IP或直接到IP的URL。其他解決方案是受歡迎的,但如果這是不可能的話,那應該是。
的什麼,我試圖做具體要求簡單的解釋是:
應該使用完全免費的(如啤酒)的技術。 (沒有閃光燈,我意識到Flash Player的網絡應用程序可以免費編碼,但是階層中的點對點需要註冊一個測試版密鑰,假設我可以免費獲得該密鑰,則永遠不會保持自由。)
沒有外部服務器或虛假的點對點。 (再次在閃存或基於統一的解決方案,其中點對點的模仿可以,只要你使用他們的中央服務器來達到的)
無需客戶端下載(肯定的是,大多數人都java或flash安裝,但許多不要,java是一個非常大的下載,不適合計算機不識字的用戶,它甚至會嘗試安裝工具欄,最重要的是,我的很多用戶不會願意下載任何東西,包括java或unity 。掌握與這個項目已經提到)
總之,如果AJAX可以發送請求到指定的IP,然後等待響應自己的問題。爲什麼我不能得到簡單的對同行在純js的消息?或者我可以嗎?
我不需要託管一個完整的Web服務器或一個單獨的應用程序或任何類型的插件來發送和接收數據。
我錯過了什麼嗎?
可能的重複[如何創建一個沒有任何服務器的P2P網絡聊天?](http://stackoverflow.com/questions/2463665/how-create-a-p2p-web-chat-without-any-server) –
沒有重複。 [WebRTC](https://en.wikipedia.org/wiki/WebRTC)的存在改變了這個問題的含義。 – Wolf