7

サーバーなしで2つのクライアントが直接対話できるようにすることは可能ですか?

私はウェブサイトについて言及しています。たとえば、同じウェブサイト上にある2つのクライアント間javascriptで、クライアント側のみを使用してチャットを作成することは可能ですか。

そうでない場合、Webサイト上のアクティブなクライアント間でチャットを機能させるための最小のサーバー側は何ですか?(例:1つのPHPファイルとデータベースなし)?

私の考え:localStorage会話の保存は各クライアントで 簡単に行うことができます。問題は、データベースに何も(またはせいぜいそのメッセージ)保存せずにデータclient1を送信する方法です。client2また、「過去の」会話は表示されるべきではないため、そのためのストレージは必要ありません。

nodeJSやwebsocketソリューションは必要ないことに注意してください。できるだけシンプルなものが必要です。では、オンラインユーザー間でチャットを行うための最低限のことは何codeですか?files

4

3 に答える 3

3

WebRTC APIを使用すると、JavaScriptでブラウザー間の直接接続を開始できますが、ページを提供し、セッションの開始を調整するには、サーバーが必要です。

APIはまだ急速に進化しており、最先端のブラウザでのみ利用できるため、実際の本番環境での使用にはまだ対応していません。

ただし、正直に言うと、あなたがやろうとしていることについては、最も簡単なオプションはNodeとsocket.ioです。

var http=require('http'), express=require('express'), sio = require('socket.io')
    , app=express(), srv = http.createServer(app);

app.use(express.static(__dirname+'/static'));

sio.listen(srv);
srv.listen(80);

...これで、5行で動作するWebSocketサーバーができました。クライアント側のものをすべて静的フォルダーに入れれば、準備は完了です。

于 2013-03-21T15:34:39.597 に答える
0

HTML5には新しいWebSockets機能があります

これにより、サーバーの介入はほとんど無効になります。サーバーとクライアントは新しいプロトコルを介して通信します

  • ws-WebSocketsプロトコル
  • wss-Web Sockets Secureプロトコル(httpsと同様)

ライブデモ

于 2013-03-21T15:25:01.610 に答える