2017-12-01 3 views
0

マイ特急サーバーのコードは次のようになります。フロントエンドサーバーから急行でいるFormDataを取得することができません

var multer = require('multer'); 
var upload = multer({ dest: 'uploads/' }) 
app.post('/godam/v1/bulkUpload',upload.single('avatar'),function (request,resp) { 
    var http = require("http"); 
    var headers = request.headers; 
    var options = { 
     "method": request.method, 
     "hostname": apiHostUrl, 
     "port": apiPort, 
     "path": request.originalUrl, 
     "headers": //request.headers 
      { 
      "content-type": "multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW", 
      "cache-control": "no-cache", 
      "postman-token": "48a15104-4366-4b48-e3fd-1bf9a7f91bcf", 
      "x-quikr-client": "Monetization.Api" 
     } 
    }; 

    var req = http.request(options, function (res) { 
     var chunks = []; 

     res.on("data", function (chunk) { 
      chunks.push(chunk); 
     }); 

     res.on("end", function() { 
      var body = Buffer.concat(chunks); 
      console.log(body.toString()); 
      resp.send(body); 
     }); 
    }); 

    req.write("------WebKitFormBoundary7MA4YWxkTrZu0gW\r\nContent-Disposition: form-data; name=\"operation\"\r\n\r\nINSERT\r\n------WebKitFormBoundary7MA4YWxkTrZu0gW\r\nContent-Disposition: form-data; name=\"type\"\r\n\r\nItr\r\n------WebKitFormBoundary7MA4YWxkTrZu0gW\r\nContent-Disposition: form-data; name=\"files\"; filename=\"bulkupload - Sheet1.csv\"\r\nContent-Type: text/csv\r\n\r\n\r\n------WebKitFormBoundary7MA4YWxkTrZu0gW--"); 
    req.end(); 
}) 

私は、req.write()にそれを渡すために、こちらのフォームデータを取得することはできませんよ となら、私に知らせてくださいmulterはデータを一時的に保存してからAPIに送信しますか?しかし、データを渡すためのミドルウェアとして機能するだけのプロキシサーバーと同じように私が使用しているのと同じように、これを持つことは望ましくありません。

私のフロントエンドサーバを反応させる:

let formData = new FormData(); 
formData.append('operation', "INSERT"); 
formData.append('type', "Itr"); 
formData.append('comment', "comment"); 
formData.append('files', "fileName"); 

axiosRequest({ 
    method: "post", 
    url: "url", 
    data:formData, 
    headers: { 'content-type': 'multipart/form-data' } 

}).then((resp) => { 
}).catch((error) => { 
}); 

答えて

0

サーバが名前avatarでファイルのアップロードを期待しているが、それは、クライアント

+0

からFORMDATAで送られていない私は削除しようとしたが、要求の本文が空のままbodyParserの設定が適切かどうかを確認してください。 –

+0

を確認してください。私は何も考えられませんでした – Muthukumar

関連する問題