angular文件上传未将文件添加到请求中
angular-file-upload not adding file to the request
我正在使用angular文件上传将图片上传到运行Node和Express 4.0的服务器,但在获取服务器上的文件数据时遇到了问题。
这是相关代码:
<input type="file" ng-file-select="onFileSelect($files)">
角度控制器:
$scope.onFileSelect = function ($files) {
var file = $files[0];
// [..] validation
$scope.upload = $upload.upload({
url: 'api/settings/picture',
method: 'POST',
file: file,
headers: {'Content-Type': undefined}
}).progress(function (evt) {
$scope.percent = parseInt(100.0 * evt.loaded / evt.total);
}).success(function (data) {
console.log(data);
}).error(function () {
console.log('error');
});
};
服务器代码:
// Picture
app.route('/api/settings/picture')
.post(middleware.auth, users.changePicture);
路线处理程序:
exports.changePicture = function (req, res) {
var userId = req.user._id;
console.log(req.files);
};
req.files
总是undefined
有什么想法吗?
问题是由Express 4.0中的更改引起的。
我用Multer解决了这个问题。
关于这篇文章的更多信息:https://groups.google.com/forum/#!topic/express js/INjdKyS3--0
相关文章:
- 正在传递JSONP标头's数据参数到另一个文件中的AJAX请求
- 请求准备一个文件并返回路径,允许用户在准备好时下载
- 显示IIS上javascript文件(SOAP请求)的XML响应
- Ajax调用返回当前html页面,而不是请求的文件
- 将任何CDN配置为只传递一个文件,无论请求的url是什么
- 是否可以缓存可下载的文件,并在XHR和非XHR请求之间共享该缓存
- YUI向json文件发出ajax请求
- 在PHP中检测AJAX请求来自哪个文件
- 需要帮助处理XML HTTP文件上载请求
- 使用CloudFront和AmazonS3,或者其他CDN,我可以将所有类似的请求发送到一个静态文件中
- 在同一主机上对PHP文件使用XMLHTTP请求的Javascript违反了同源策略
- 在ajax请求后重新呈现EJS文件
- Laravel&Dropzone.js文件请求
- 获取请求JS文件的网站的域
- 如何在Liferay serveResource(-,-)方法中从AJAX请求下载文件
- JSON请求返回.txt文件
- 正在删除配置文件请求
- 包含和条件与传统的多文件请求
- XMLHttpRequest发送文件请求对于大文件给出404错误
- 从一个页面上的多个文件请求数据