0
我想通過從mongodb gridfs流中讀取將文件上載到服務器(使用Java構建)。使用請求庫的nodeJS文件上傳
exports.upload = function(req, res, next) {
var IHUrl = config.api.url + "PhotosServlet";
var data = req.body;
var file1 = api.gfs.createReadStream({
_id: data.fileId
})
var formData = {
"imgTyp": data.imgTyp,
"listingid": data.listingid,
"scaleTech": data.scaleTech,
"SPC": data.SPC,
"SPCUID": data.SPCUID,
"varRand": data.varRand,
"file1": file1
};
var r = request.post({
url: IHUrl,
formData: formData
}, function(error, IHResponse, body) {
if (error) {
res.send(500, error);
console.log("Error occured uploading file1")
} else {
console.log("Upload successful", IHResponse);
res.send(200, IHResponse);
}
});
next();
};
在我開始將文件上傳到上游服務器之前,文件已經上載到mongodb gridfs中。
我使用以下的NodeJS庫:
請求,GridFS的流
我正在從上游服務器以下錯誤:
javax.servlet.ServletException:多部分的加工/形狀配合數據請求失敗。流意外結束
這裏可能會出現什麼問題?
嘗試刪除'next();' –
感謝隊友的建議。我嘗試添加頭文件:{「transfer-encoding」:「chunked」},將其添加到頭文件中,並且沒有任何抱怨。 – Prabhat
這就是它的樣子:request.post({url:IHUrl, headers:{「transfer-encoding」:「chunked」}, formData:formData } – Prabhat