node.js http serverを作成します
前の記事では、最も基本的なnode.jsプログラムを紹介しました。 「Hello World」プログラムは優れていますが、node.jsは、非常にスケーラブルなサーバーアプリケーションを作成するためにより一般的に使用されます。この記事では、node.jsに構築された簡単なHTTPサーバーを紹介します。
キーポイント
- node.jsを使用すると、単純なHTTPサーバーを作成できます。重要なステップは、新しいファイルを作成し、適切なコードを挿入してサーバーを実行することです。サーバーは、LocalHostまたはマシンのIPアドレスを介してWebブラウザを介してアクセスできます。
- サーバーの機能は、
メソッド(モジュールの読み込み)と require()
モジュールのhttp
メソッド(サーバーの作成と新しいリクエストのコールバック関数の実行)に基づいて構築されます。コールバック関数は、2つのパラメーター(リクエストと応答)を使用して、クライアント要求を処理してデータを返します。createServer()
サーバーは、 - メソッドを使用してHTTPステータスコードと応答ヘッダーをクライアントに送り返し、
response.writeHead()
を使用してHTMLページに書き込み、response.write()
を使用して応答を終了します。サーバーは、response.end()
メソッドを使用して、着信接続をリッスンします。現在、サーバーは単一のHTMLページのみを返すことができ、将来の拡張機能には、ファイルシステムからWebページの読み取りやHTTP認証の統合が含まれます。listen()
サーバーを実行している
最初に、「web_server.js」という名前の新しいファイルを作成します。次のコードをファイルに挿入して保存します。サーバーを起動するには、次のコマンドを入力します。すべてが正常に機能する場合、サーバーが聞いていることを示すメッセージが表示されます。サンプルサーバーは、ポート80(標準のHTTPポート)にバインドしようとすることに注意してください。このポートが使用されているか、マシンで制限されている場合、エラーが発生します。
var http = require("http"); var server = http.createServer(function(request, response) { response.writeHead(200, {"Content-Type": "text/html"}); response.write("<!DOCTYPE html>"); response.write("<html>"); response.write("<head>"); response.write("<title>Hello World Page</title>"); response.write("</head>"); response.write("<body>"); response.write("Hello World!"); response.write("</body>"); response.write("</html>"); response.end(); }); server.listen(80); console.log("Server is listening");
次のステップは、Webブラウザを使用してサーバーに接続することです。選択したブラウザを起動し、次のリンクのいずれかに向けます。ネットワークの用語では、LocalHost(およびそのIPアドレス127.0.0.1)は、現在使用しているマシンを指します。ブラウザは「Hello World!」を表示する必要があります。
node web_server.js
<code>http://localhost http://127.0.0.1</code>サーバーがどのように動作するか
サーバーが稼働しているので、コードを分析する時が来ました。最初に注意すべきことは、1行目の
この記事では、非常に基本的なHTTPサーバーを紹介します。現在の状態では、サーバーは単一のHTMLページのみを返すことができます。次の数週間で、node.jsの世界に飛び込み、ファイルシステムからWebページを読んだり、HTTP認証の統合など、他の機能を調査します。
HTTPサーバー(FAQ) を作成するためのFAQ node.jsの メソッドを使用してHTTPサーバーを作成する必要があります。このメソッドは、サーバーがリクエストを受信するたびに実行されるコールバック関数をパラメーターとして使用します。コールバック関数には2つのパラメーターがあります。 require()
呼び出しです。 node.jsは、巨大な開発者コミュニティを備えたシンプルなモジュールシステムを提供します。 node.jsプログラムは、require()
メソッドを使用して単一のモジュールをロードできます。多くのモジュールをダウンロードする必要がありますが、一部のモジュール(例:http
)がnode.jsインストールに含まれています。 2行目では、http
モジュールのcreateServer()
メソッドを使用して、HTTPサーバーを作成します。ほとんどのnode.js関数と同様に、createServer()
はコールバック関数を引数として取得します。このコールバック関数は、サーバーが新しいリクエストを受信するたびに実行されます。コールバック関数は、リクエストと応答の2つのパラメーターを受け入れます。リクエストオブジェクトには、URL、HTTPヘッダーなどのクライアントリクエストに関する情報が含まれています。同様に、応答オブジェクトは、データをクライアントに返すために使用されます。コールバック関数は、最初にresponse.writeHead()
メソッドを呼び出します。このメソッドは、HTTPステータスコードと一連の応答ヘッダーをクライアントに送信します。ステータスコードは、リクエストの結果を示すために使用されます。たとえば、誰もが以前に404エラーに遭遇したことがあり、ページが見つからないことを示しています。サンプルサーバーはコード200を返し、成功を示しています。ステータスコードに加えて、サーバーは応答のパラメーターを定義する多くのHTTPヘッダーを返します。ヘッダーを指定しない場合、node.jsはそれらを暗黙的に送信します。サンプルサーバーは、Content-Type
ヘッダーのみを指定します。この特定のヘッダーは、応答のMIMEタイプを定義します。 HTML応答の場合、MIMEタイプは「テキスト/HTML」です。次に、サーバーはいくつかの呼び出しを実行しますresponse.write()
。これらの呼び出しは、HTMLページに書き込むために使用されます。デフォルトでは、UTF-8文字エンコードが使用されます。技術的には、これらの呼び出しはすべて、パフォーマンスを改善するための単一の呼び出しに結合することができます。ただし、このような簡単な例では、コードの読みやすさのパフォーマンスが犠牲になります。 HTMLページに書き込みた後、response.end()
メソッドが呼び出されます。この方法を呼び出すことにより、応答ヘッダーと本体が送信され、リクエストが完了したことをサーバーに伝えます。サンプルサーバーは、パラメーターなしでend()
を呼び出します。ただし、一度だけ電話する必要がある場合は、end()
のように呼ばれることもあります。 15行目の呼び出しにより、サーバーはポートにバインドし、着信接続をリッスンします。コンピューターには、通信エンドポイントとして機能する何千ものポートがあります。サーバーに接続するために、クライアントはサーバーがどのポートを聴いているかを正確に知る必要があります。ポートはポート番号によって識別され、通常、HTTPサーバーはポート80に耳を傾けます。 write()
listen()
node.jsの「http.createserver()」メソッドの目的は何ですか?
http.createServer()
メソッドは、node.jsに組み込み関数であり、HTTPサーバーの新しいインスタンスを作成します。このサーバーは、着信要求のために耳を傾け、応答を送信します。引数としてrequestListener
関数を取り、「リクエスト」イベントに自動的に追加されます。この関数は、サーバーがリクエストを受信するたびに呼び出されます。 requestListener
関数には、2つのパラメーターがあります:request
(http.IncomingMessage
のインスタンス)とresponse
(http.ServerResponse
のインスタンス)。 node.jsの「respons.writehead()」メソッドはどのように機能しますか?
response.writeHead()
メソッドは、node.jsの関数であり、応答ヘッダーをリクエストに送信します。このメソッドは、2つのパラメーターを受け入れます。ステータスコードと応答ヘッダーを表す通常のオブジェクトです。ステータスコードは3ビットHTTPステータスコードであり、2番目のパラメーターは、各キー値ペアがヘッダー名とその値を表すオブジェクトです。このメソッドはresponse.end()
の前に呼び出される必要があり、応答ごとに1回のみ呼び出すことができます。 node.jsの「write」と「writehead」の違いは何ですか?
write
およびwriteHead
メソッドは、サーバーの応答を送信するために使用されます。 writeHead
メソッドは、HTTPステータスコードと一連の応答ヘッダーを送信するために使用されますが、write
メソッドはクライアントに応答本体を送信するために使用されます。 writeHead
メソッドはwrite
の前に呼び出す必要があります。どちらもend
の前に呼び出され、end
はすべての応答ヘッダーと本体が送信されていることをサーバーに信号します。 node.jsで「node-http-server」パッケージを使用する方法は?
node-http-server
は、node.jsのシンプルで簡単に構成できるHTTPまたはHTTPSサーバーです。それを使用するには、最初にnpm install node-http-server
を実行してNPM(ノードパッケージマネージャー)を使用してインストールする必要があります。インストール後、node.jsファイルに導入し、そのdeploy
メソッドを使用してサーバーを起動できます。 deploy
メソッドは、構成オブジェクトをパラメーターとして使用し、ポート、ルート、ServerIndexなどのサーバーオプションを指定できます。 node.jsでHTTPリクエストと応答を処理する方法は?
Node.jsでは、http
オブジェクトを使用して、URL、HTTPヘッダー、ペイロードなどのクライアント要求に関する情報を取得できます。 http.createServer()
オブジェクトは、クライアントへの応答を送信するために使用されます。 request
メソッドを使用してhttpステータスコードとヘッダーを設定し、response
メソッドを使用して応答本体を記述し、request
メソッドを使用して応答を終了できます。 response
以上がnode.jsでHTTPサーバーを作成しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

JavaScriptフレームワークのパワーは、開発を簡素化し、ユーザーエクスペリエンスとアプリケーションのパフォーマンスを向上させることにあります。フレームワークを選択するときは、次のことを検討してください。1。プロジェクトのサイズと複雑さ、2。チームエクスペリエンス、3。エコシステムとコミュニティサポート。

はじめに私はあなたがそれを奇妙に思うかもしれないことを知っています、JavaScript、C、およびブラウザは正確に何をしなければなりませんか?彼らは無関係であるように見えますが、実際、彼らは現代のウェブ開発において非常に重要な役割を果たしています。今日は、これら3つの間の密接なつながりについて説明します。この記事を通して、JavaScriptがブラウザでどのように実行されるか、ブラウザエンジンでのCの役割、およびそれらが協力してWebページのレンダリングと相互作用を駆動する方法を学びます。私たちは皆、JavaScriptとブラウザの関係を知っています。 JavaScriptは、フロントエンド開発のコア言語です。ブラウザで直接実行され、Webページが鮮明で興味深いものになります。なぜJavascrを疑問に思ったことがありますか

node.jsは、主にストリームのおかげで、効率的なI/Oで優れています。 ストリームはデータを段階的に処理し、メモリの過負荷を回避します。大きなファイル、ネットワークタスク、リアルタイムアプリケーションの場合。ストリームとTypeScriptのタイプの安全性を組み合わせることで、パワーが作成されます

PythonとJavaScriptのパフォーマンスと効率の違いは、主に以下に反映されています。1)解釈された言語として、Pythonはゆっくりと実行されますが、開発効率が高く、迅速なプロトタイプ開発に適しています。 2)JavaScriptはブラウザ内の単一のスレッドに限定されていますが、マルチスレッドおよび非同期I/Oを使用してnode.jsのパフォーマンスを改善でき、両方とも実際のプロジェクトで利点があります。

JavaScriptは1995年に発信され、Brandon Ikeによって作成され、言語をCに実現しました。 2。JavaScriptのメモリ管理とパフォーマンスの最適化は、C言語に依存しています。 3. C言語のクロスプラットフォーム機能は、さまざまなオペレーティングシステムでJavaScriptを効率的に実行するのに役立ちます。

JavaScriptはブラウザとnode.js環境で実行され、JavaScriptエンジンに依存してコードを解析および実行します。 1)解析段階で抽象的構文ツリー(AST)を生成します。 2)ASTをコンパイル段階のバイトコードまたはマシンコードに変換します。 3)実行段階でコンパイルされたコードを実行します。

PythonとJavaScriptの将来の傾向には、1。Pythonが科学コンピューティングの分野での位置を統合し、AI、2。JavaScriptはWebテクノロジーの開発を促進します。どちらもそれぞれのフィールドでアプリケーションシナリオを拡大し続け、パフォーマンスをより多くのブレークスルーを行います。

開発環境におけるPythonとJavaScriptの両方の選択が重要です。 1)Pythonの開発環境には、Pycharm、Jupyternotebook、Anacondaが含まれます。これらは、データサイエンスと迅速なプロトタイピングに適しています。 2)JavaScriptの開発環境には、フロントエンドおよびバックエンド開発に適したnode.js、vscode、およびwebpackが含まれます。プロジェクトのニーズに応じて適切なツールを選択すると、開発効率とプロジェクトの成功率が向上する可能性があります。


ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

SAP NetWeaver Server Adapter for Eclipse
Eclipse を SAP NetWeaver アプリケーション サーバーと統合します。

MinGW - Minimalist GNU for Windows
このプロジェクトは osdn.net/projects/mingw に移行中です。引き続きそこでフォローしていただけます。 MinGW: GNU Compiler Collection (GCC) のネイティブ Windows ポートであり、ネイティブ Windows アプリケーションを構築するための自由に配布可能なインポート ライブラリとヘッダー ファイルであり、C99 機能をサポートする MSVC ランタイムの拡張機能が含まれています。すべての MinGW ソフトウェアは 64 ビット Windows プラットフォームで実行できます。

SecLists
SecLists は、セキュリティ テスターの究極の相棒です。これは、セキュリティ評価中に頻繁に使用されるさまざまな種類のリストを 1 か所にまとめたものです。 SecLists は、セキュリティ テスターが必要とする可能性のあるすべてのリストを便利に提供することで、セキュリティ テストをより効率的かつ生産的にするのに役立ちます。リストの種類には、ユーザー名、パスワード、URL、ファジング ペイロード、機密データ パターン、Web シェルなどが含まれます。テスターはこのリポジトリを新しいテスト マシンにプルするだけで、必要なあらゆる種類のリストにアクセスできるようになります。

メモ帳++7.3.1
使いやすく無料のコードエディター

ZendStudio 13.5.1 Mac
強力な PHP 統合開発環境

ホットトピック









