node.js - bodyParser解析得到的参数类型不统一
PHPz
PHPz 2017-04-17 15:15:53
0
1
631

请问express中如何使用bodyParser得到统一的数据类型?

const bodyParser = require('body-parser');

app.use(bodyParser.json());

app.use(bodyParser.urlencoded({
    extended: false
}));

移动设备发出的json请求 在req.body得到的参数类型会是对应的boolean、number、string

而网页中发出的form请求 在req.body得到的参数类型只会有string

PHPz
PHPz

学习是最好的投资!

全員に返信(1)
巴扎黑

送信されたリクエストのヘッダーと解析方法が異なります

  1. モバイル デバイスから送信される json リクエストの場合、ヘッダーの Content-Typeapplication/json であり、サーバーは { name : 'taozhi', age: 18, cool: true}

  2. Web ページのフォームによって発行されるリクエストは、サーバーがそのエンコーディングを認識した後、ヘッダーの

    Content-Typeapplication/x-www-form-urlencoded になります。 などの送信データ。その後、json に解析されるため、文字列型になります。詳細な分析については、拡張が false の場合は、querystringname=taozhi&age=18&cool=true

    を参照してください。
  3. 問題が何であるかはわかりました。要求するときは、

    を同時に宣言してください。Content-Type

  4. リーリー
解析には qs ライブラリを使用するのが最善です

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート