2011-09-17 108 views
3

私はこれについて非常に新しいので、私は何をしているのか分かりませんが、node.js udpサーバーをセットアップしました。クライアント(ウェブサイトから)からパケットを送信したいのですが、javascriptでそれを行う方法がわかりません。私はnode.jsクライアントからサーバーにパケットを送信する方法を見ていませんが、node.js udpサーバーにパケットを送信するためのWebサイトを作成する方法を探しています。それが理にかなっているかどうかは分かりませんが、助けてくれてありがとう!udp node.jsサーバーにudpを送信する方法は?

答えて

6

ウェブブラウザ(つまりJavaScript)からUDPデータグラムを送信することはできません。あなたができることは、Webサーバー(AJAXやwebsocketなど)に連絡して、サーバー側のプログラム(phpまたはnode.jsなど)を実行してUDPデータグラムを送信することです。サーバー側プログラミング言語のネイティブソケットモジュール(Pythonphpnode.js)を使用してUDPデータグラムを送信できます。

しかし、なぜ最初にUDPを使用していますか?再送信、並べ替えなどを処理する必要があります.WebブラウザーはTCP経由でしか話せないため、UDPの利点は得られません。

+0

私はチャットアプリを作成し、受信/メッセージを送信するためにUDPを使いたいんです。 – Derek

+1

ウェブブラウザからtcpを実行できますか? – Derek

+1

@Derekチャットアプリの場合、私はTCPの代わりにUDPを使う理由を想像できません。欠点は次のとおりです。再送信を実装する必要があり、順序付けを実装する必要があります(大きなパケットの場合も必要です)。また、場合によっては輻輳回避も必要です。 TCPを使うと、そのすべてを無償で入手でき、ファイアウォールを通過するのが容易になります。では、なぜTCPの代わりにUDPを使用していますか? – phihag

6

あなたは、このチュートリアルに興味がある可能性があります

http://fzysqr.com/2011/02/28/nodechat-js-using-node-js-backbone-js-socket-io-and-redis-to-make-a-real-time-chat-app/

それは非常に細かい詳細にNode.jsのでチャットアプリケーションを作成する方法を通過し、彼もSocket.io(Aを使用する方法を示していますブラウザjsライブラリ)を使用して、リアルタイムで低レイテンシーの応答を得るためのWebソケットを利用できます。

そして、Phihagは、UDPがこの種のアプリケーションにはうまくいかないことを暗示しています。UDPは、パケットが宛先に到達することを保証しないため、です。この場合は、必ずTCPソケットを使用します。

もっと読み:

関連する問題