ホームページ > ウェブフロントエンド > jsチュートリアル > Express.js の POST フォーム フィールドにアクセスするにはどうすればよいですか?

Express.js の POST フォーム フィールドにアクセスするにはどうすればよいですか?

DDD
リリース: 2024-12-10 05:17:09
オリジナル
205 人が閲覧しました

How Do I Access POST Form Fields in Express.js?

Express で POST フォーム フィールドにアクセスする: ガイド

フォームを操作する場合、Express で POST フォーム フィールドにアクセスするのは簡単なプロセスです。ただし、Express バージョンの微妙な変更により、アプローチにいくつかのバリエーションが導入されました。

Express 4.16.0 以降

Express 4.16.0 以降、POST フォーム フィールドへのアクセスは、次の導入により簡素化されました。 Express.json() と Express.urlencoded の。これらのミドルウェア関数は、それぞれ JSON と URL エンコードされた本文を解析します。

このアプローチを使用するには、Express:

$ npm install express
ログイン後にコピー

をインストールし、Express アプリケーションに次のミドルウェアを含めます:

app.use(express.json());       // to support JSON-encoded bodies
app.use(express.urlencoded()); // to support URL-encoded bodies
ログイン後にコピー

これらのミドルウェアが配置されると、req.body を使用して POST フォーム フィールドにアクセスできるようになります。 object:

// assuming POST: name=foo&amp;color=red            <-- URL encoding
//
// or       POST: {&quot;name&quot;:&quot;foo&quot;,&quot;color&quot;:&quot;red&quot;}  <-- JSON encoding

app.post('/test-page', function(req, res) {
    var name = req.body.name,
        color = req.body.color;
    // ...
});
ログイン後にコピー

Express 4.0 ~ 4.15

Express 4.16.0 より前では、POST フォーム フィールドの処理には、body-parser パッケージのインストールとそのミドルウェアの使用が必要でした。

$ npm install --save body-parser
ログイン後にコピー

Express アプリケーションに次の内容を含めます行:

var bodyParser = require('body-parser')
app.use( bodyParser.json() );       // to support JSON-encoded bodies
app.use(bodyParser.urlencoded({     // to support URL-encoded bodies
  extended: true
})); 
ログイン後にコピー

この構成では、POST フォーム フィールドへのアクセスは Express 4.16.0 のアプローチと似ています:

app.post('/test-page', function(req, res) {
    var name = req.body.name,
        color = req.body.color;
    // ...
});
ログイン後にコピー

注: Express.bodyParser() の使用は次のとおりです。推奨されません。express.json()、express.urlencoded()、およびexpress.multipart()を組み合わせて使用​​することと同等です。特にマルチパート エンコーディングのサポートが必要な場合を除き、express.bodyParser() は避けてください。これにはセキュリティ上の懸念が伴います。マルチパート エンコーディングについては、Express のドキュメントを参照してください。

以上がExpress.js の POST フォーム フィールドにアクセスするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート