Nodejsリクエスト終了後に関数を呼び出す方法
Apr 05, 2023 pm 01:48 PMNode.js 開発では、非同期リクエストを行うときにコールバック関数を呼び出す必要があることがよくありますが、このコールバック関数はリクエスト終了後にいくつかの操作を実行する役割を果たします。 Node.js によって提供される http モジュールは、http リクエストを開始するためによく使用されるモジュールであり、クライアントまたはサーバーの http リクエストに使用できます。
http モジュールでは、通常 http.get() または http.request() メソッドを使用して http リクエストを開始します。どちらのメソッドも非同期であり、要求が完了するのを待ってから戻ります。では、リクエストが終了した後にコールバック関数を呼び出すにはどうすればよいでしょうか?
方法 1: コールバック関数をパラメータとして渡す
http.get() メソッドと http.request() メソッドでは、どちらもコールバックを含めることができるパラメータ オプションを受け入れます。関数。このコールバック関数はリクエスト完了後に実行される関数です。
たとえば、http.get() メソッドを使用して Web ページのコンテンツを取得し、リクエストの完了後にそのコンテンツをコンソールに出力できます。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
|
この例では、では、http.get() メソッドを通じて GET リクエストを送信し、http://www.example.com の Web ページのコンテンツを取得します。次に、無名関数をコールバック関数として定義することで、受信した応答データを連結してコンソールに出力します。
方法 2: Promise オブジェクトを使用する
コールバック関数をパラメーターとして渡すだけでなく、Promise オブジェクトを使用してリクエスト終了後の操作を処理することもできます。 Promise オブジェクトは ES6 の新機能で、Node.js の非同期メソッドで広く使用されています。
http モジュールでは、http.get() または http.request() メソッドを呼び出すことで Promise オブジェクトを返すことができます。この Promise オブジェクトでは、 then() メソッドを使用して、リクエストの終了後に実行される関数を設定できます。たとえば、Promise オブジェクトを使用して Web ページのコンテンツを取得し、リクエストの完了後にそのコンテンツをコンソールに出力できます。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 |
|
この例では、getRequest() という関数を使用して、 Promise オブジェクトを返します。 http.get() メソッドを Promise オブジェクトでラップし、リクエストの最後に、solve() 関数を通じて応答データを then() メソッドに渡します。エラーが発生した場合、エラー情報は、reject() 関数を通じて catch() メソッドに渡されます。次に、getRequest() メソッドを呼び出し、返された Promise オブジェクトで then() メソッドを定義することで、応答データを出力します。
概要
上記は、Node.js で http リクエストを開始し、リクエストの完了後に関数を呼び出す 2 つの方法です。コールバック関数をパラメータとして渡すか、Promise オブジェクトを使用することで、リクエストの終了後にカスタム アクションを実行できます。実際の開発では、特定の状況に応じて非同期リクエストを処理する適切な方法を選択できます。
以上がNodejsリクエスト終了後に関数を呼び出す方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

人気の記事

人気の記事

ホットな記事タグ

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

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック











UseEffectとは何ですか?副作用を実行するためにどのように使用しますか?

JavaScriptの高次関数とは何ですか?また、より簡潔で再利用可能なコードを書くためにどのように使用できますか?

Reactのパフォーマンス最適化手法(メモ化、コード分割、怠zyな読み込み)とは何ですか?

usecontextとは何ですか?コンポーネント間で状態を共有するためにどのように使用しますか?
