如何上传ng文件以使用Node
How do I get ng-file-upload to work with Node?
我正在使用带有Node、Express、Multer和ng文件上传的Angular。由于某种原因,我收到了400(错误请求)http请求错误。我尝试了不同的方法,但这一切都回来了。这是代码示例。
HTML
<form ng-controller="adminController" name="form">
带验证的单个图像选择
提交
Angular app.js
$scope.submit = function() {
$log.info($scope.file);
if ( $scope.file) {
$scope.upload($scope.file);
}
};
// upload on file select or drop
$scope.upload = function (file) {
Upload.upload({
url: '/api/admin/photos',
headers : {
'Content-Type': 'multipart/form-data'
},
data: {file: file}
}).then(function (resp) {
console.log('Success ' + resp.config.data.file.name + 'uploaded. Response: ' + resp.data);
}, function (resp) {
console.log('Error status: ' + resp.status);
}, function (evt) {
var progressPercentage = parseInt(100.0 * evt.loaded / evt.total);
console.log('progress: ' + progressPercentage + '% ' + evt.config.data.file.name);
});
};
节点js
//upload photos
apiRoutes.post('/admin/photos',upload.single(),function(req,res){
console.log(req);
res.json({name: 'this works'});
});
upload.single()
应该改为upload.single('file')
,因为这是用于上载的属性名称。此外,明确设置:
headers : {
'Content-Type': 'multipart/form-data'
}
没有必要。
如果这仍然不起作用,您应该暂时删除upload.single('file')
,并确保从一开始就可以访问您的路由处理程序(并且以前的一些中间件/路由处理程序没有拦截它)。
相关文章:
- 使用Angular和Node上传文件
- 将CSV文件从URL导入Node.js
- node.js的webtorrent通过magnet链接收集所有文件
- node.js将字符串转换为要上传到Web服务器的文件
- 如何使用Node.js在JavaScript模块文件之间使用事件处理程序
- 如何在node.js中只下载文件的前10 KB
- 如何从Node Webkit应用程序中退出外部CMD文件
- 如何从Node.js执行.exe文件
- 使用angularjs和node.js时的Web应用程序文件夹结构
- 处理字段中带有换行符的csv文件-node.js
- Node.js:在修改时确定文件大小
- 尝试使用Node.js动态路由从IMDB中抓取电影内容.但是在我的output.json文件中没有定义
- 如何读取node.js中目录中的文件
- Node.js服务器问题-已添加“/"在浏览器中查找文件时
- 使用node-js上传文件,并将表单信息存储在数据库(mysql)中
- 在Node Webkit应用程序中从DOM单击按钮时运行批处理文件
- 在 Node.JS 中,如何从单独的.js文件中返回整个对象
- Node.js-如何链接到本地文件
- 学习node文件服务器为什么将createReadStream()放入createServer()中
- 如何使用.node文件