我採用了棱角分明文件上傳過和的node.js服務器。
這是我如何上傳我的文件在我的角度控制器:
$scope.uploadInternationalFile = function(file) {
if (file && file.length) {
file.upload = Upload.upload({
url: '/api/upload',
method: 'POST',
file: file
});
file.upload.then(function(response) {
// file Sent
});
}
};
我收到我的文件我的服務器上像這樣帶有故宮「multer」包:
module.js
var privateStorage = multer.diskStorage({
destination: function(req, file, callback) {
callback(null, './files/');
},
filename: function(req, file, callback) {
callback(null, file.originalname);
}
});
var limits = {
fieldNameSize: 100,
fileSize:20000000,
files: 1,
fields: 5
};
var self = module.exports = {
uploadPrivate: multer({
storage:privateStorage,
limits:limits
}).single('file')
};
這是我的API:
var fileUpload = require('module.js');
app.post('/api/upload', function(req, res) {
fileUpload.uploadPrivate(req, res, function(err) {
if (err) {
// There is an upload error
}
else {
// Your file has been sent
}
}
});
希望它有幫助。
在演示頁面上,我看着Json按代碼返回,有一段長度。函數onAfterAddingFile返回一個具有_file和長度的對象 – Alexis
它不會傳遞類似於「Content-Length」的標頭... – Davide
您只需將正確的屬性發送給您的大小......您可以在後端發送您想要的內容服務器,你有一個長度,所以發送它 – Alexis