ホームページ  >  記事  >  ウェブフロントエンド  >  Node.js および Express POST リクエストの完全なリクエスト本文にアクセスするにはどうすればよいですか?

Node.js および Express POST リクエストの完全なリクエスト本文にアクセスするにはどうすればよいですか?

Susan Sarandon
Susan Sarandonオリジナル
2024-10-27 11:27:01134ブラウズ

How to Access the Full Request Body in Node.js and Express POST Requests?

Node.js および Express POST リクエストでの完全なリクエスト本文へのアクセス

この記事では、 Node.js と Express フレームワークを使用した POST リクエスト。

Express と bodyParser

提供される最初のコードは、Express.js と Express.bodyParser() ミドルウェアを使用して解析します。リクエストの本文。ただし、request.body を使用してリクエスト本文全体にアクセスしようとすると、エラーが発生しました。

Express v4.16 以降

Express v4.16 以降、 Express.bodyParser() ミドルウェアは必要なくなりました。代わりに、開発者は組み込みの JSON ミドルウェア、express.json() を直接使用できます。

コードに app.use(express.json()) を追加すると、リクエストの本文が自動的に解析され、アクセスできるようになります。リクエストハンドラーの req.body として。 Content-Type: application/json など、クライアント リクエストに適切な Content-Type ヘッダーを忘れずに設定してください。

Raw Request Body

Raw リクエストにアクセスするにはExpress ミドルウェアを使用せずにボディを作成する場合、開発者は Node.js の req.get('content-type') メソッドと req.rawBody メソッドを利用できます。

例:

app.post('/', function(req, res) {
  if (req.get('content-type') === 'application/json') {
    // Get the raw JSON body
    req.rawBody = '';
    req.on('data', (chunk) => { req.rawBody += chunk; });
    req.on('end', () => {
      // Do something with req.rawBody
    });
  }
});

この方法では、生のリクエスト本文に直接アクセスして操作できます。

以上がNode.js および Express POST リクエストの完全なリクエスト本文にアクセスするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。