2017-08-20 1 views
0

フォームデータ(変数または画像)を受け入れるAPIを構築しています。私はちょうどそれがあるとしてREQをレンダリングし、私はreq.body.attachment_type_idをレンダリングする場合、私は空白の応答を取得フォームデータノードにアクセスするjs

{ 
    "------WebKitFormBoundarykjCufNDj9Nu9UePk\r\nContent-Disposition: form-data; name": "\"attachment_type_id\"\r\n\r\n0\r\n 
    ------WebKitFormBoundarykjCufNDj9Nu9UePk\r\nContent-Disposition: form-data; name=\"firstName\"\r\n\r\nImrn\r\n 
    ------WebKitFormBoundarykjCufNDj9Nu9UePk\r\nContent-Disposition: form-data; name=\"lastName\"\r\n\r\nAhmd\r\n------WebKitFormBoundarykjCufNDj9Nu9UePk--\r\n" 
} 

を取得しています以下の enter image description here

を渡しています。 データ値attachment_type_idを取得するにはどうすればよいですか?画像をアップロードする前にattachment_type_idを確認する必要があります。

+0

なぜフォームデータの値をレンダリングするのですか?通常、値を使用してデータをどこかに保存します。 – JazzBrotha

+0

データの値を使ってクエリを構成する必要があります。 –

+0

さて、なぜそれをレンダリングする必要がありますか? 'req.body.firstName'を' node'に記録するとどうなりますか?値はサーバーに送信されませんか? – JazzBrotha

答えて

0

multerすることができます。

あなたserver.jsでnpm install --save multer

または

var multer = require('multer'); 
var upload = multer(); 

// Parse json data 
app.use(bodyParser.urlencoded({extended: true})); 
app.use(bodyParser.json()); 
// For multi form data 
app.use(upload.array()); 

をapp.jsを実行することにより、multerをインストールするには、今あなたが何を求めて取得します。

0

form-dataは大部分が大きなバイナリデータを送信するために使用されます。 Webフォームからのテキストの送信をシミュレートする場合は、x-www-form-urlencoded

+0

私はあなたに同意します、実際に私は添付ファイルの種類として画像と変数を送信しています。 –

+0

[multer](https://github.com/expressjs/multer)は 'multipart/form-data'を扱うための素晴らしいミドルウェアです – JazzBrotha

1

ルートを定義する前にエクスプレスアプリにミドルウェアとしてbody-parserを追加してください。 Content-Typeの "値":「アプリケーション/ X-WWW-

 



            
 
// parse application/x-www-form-urlencoded 
 
app.use(bodyParser.urlencoded({ extended: true })); 
 
// parse application/json 
 
app.use(bodyParser.json());

ボディパーサーはreq.body

における要求データリクエスト "キー" への正しいヘッダを追加してください移入しますフォーム - URLエンコード "

+0

私はすでにserver.jsでそれを行っています –

関連する問題