4

私がよく理解していないnode.jsの側面がいくつかあります。誰かが物事を明確にしてくれることを願っています

node.js をインストールするとき、Web ブラウザーがコンテンツを表示できるように、ファイルをどこに保存しますか? たとえば、Apache には www フォルダーがあります。

node.js はクライアント側の JavaScript を置き換えますか?

node.js は HTML とどのようにやり取りしますか? たとえば、サーバーからのデータをこの div 要素に入れたい場合、<div id="content"></div> PHP では次のようにすることができます。<div id="content"><?php echo $content; ?></div>

クライアント側から node.js を呼び出すことはありますか? 例: データを取得するための node.js への Ajax 要求。

私を混乱させているのは、サーバーから実行されるため、ブラウザでjavascriptを使用してnode.jsサーバーからデータを取得できることです。ただし、私が見た例では、これは決して行われません。

前もって感謝します

4

3 に答える 3

6

node.js をインストールするとき、Web ブラウザーがコンテンツを表示できるように、ファイルをどこに保存しますか? たとえば、Apache には www フォルダーがあります。

どこにいても。node.js は静的コンテンツを提供せず、JavaScript を実行します。起動時に実行するスクリプトを指定します。

静的コンテンツを提供する JavaScript を作成することもできますが、それをどこに保持するかは、作成したコードによって異なります。

node.js はクライアント側の JavaScript を置き換えますか?

サーバー側のプログラミングがクライアント側の JavaScript を置き換える限りにおいてのみ。

サーバー側で JS を使用する利点の 1 つは、クライアントとサーバーの両方でライブラリを再利用できることです。これに焦点を当てていると主張するフレームワークについては、 Mojitoを参照してください(私はまだ自分で試す時間がありませんでした)。

たとえば、サーバーからのデータをこの div 要素に入れたい場合、<div id="content"></div>PHP では次のようにすることができます。<div id="content"><?php echo $content; ?></div>

PHP は、プログラミング言語が組み込まれたテンプレート言語です。JavaScript はプログラミング言語です。通常、JSのテンプレート言語 (例: mustache ) を使用します。

クライアント側から node.js を呼び出すことはありますか? 例: データを取得するための node.js への Ajax 要求。

はい、必要に応じて。他のサーバー側プログラミング環境と同様です。(ノードを使用してHTTPサーバーを実行していると仮定します)。

于 2012-05-04T13:06:27.493 に答える
1

Node.js はサーバーではありません (Apache など)。これは、いくつかの組み込みライブラリ (いわゆるモジュール) を使用して Javascript を実行するためのプラットフォームです。Node.js でサーバー (HTTP またはその他) を作成するのは非常に簡単ですが、完全に異なるプログラム (ネットワークに関係なく、ローカルで実行することを意図したもの) を作成することもできます。

これを読むことをお勧めします: http://www.nodebeginner.org/。数時間かかりましたが、ノードの基本をそれほど苦労することなく理解することができました。

クライアント側のスクリプトに関しては、通常は別です。ノード内のコードは、ブラウザー内の環境とは別の環境で実行されます。それらは通信できますが、明示的に通信する必要があります。PHP でのサーバー側のコーディングと大差ありません。サーバー上のコードは、クライアントに送信される出力 (HTML など) を生成します。出力にスクリプトがある場合、クライアント (ブラウザー) はそれを実行します。それらは (XHR、websocket などを介して) 通信できますが、それらのスクリプト自体は別のものです。

于 2012-05-04T14:06:39.177 に答える
0

node.js は HTML とどのようにやり取りしますか? たとえば、サーバーからのデータをこの div 要素に入れたい場合、PHP では次のようにすることができます。

おそらく、コンテンツを JSON として JS クライアントに送信し、それを DOM に挿入します (プレーンな JS または JQuery を使用)。

いくつかの概念を試し、クライアントとサーバーの両方で JS を操作する方法を理解するために、Node.js で非常に簡単な (そして機能が豊富ではない :-P)チャットアプリケーションを作成しました。多分それはあなたにいくつかの手がかりを与えるでしょう。

編集

このアプリケーションでは、サーバーは静的ファイルも提供しますが、これは本番用のアプリケーションを実装するときに行うべきではありません (Node は静的ファイルの提供にはあまり適していません!)。

于 2012-05-04T13:50:08.890 に答える