【发布时间】:2016-02-04 09:59:28
【问题描述】:
我创建了一个使用 Angular 文件上传组件 (https://github.com/nervgh/angular-file-upload/wiki/Module-API) 的页面,但是我找不到如何获取上传的文件信息以将其保存在磁盘上。
我不知道密钥名称是什么以及如何保存它。如果您能帮助我,这是我的代码示例。
app.controller('HomeController', ['$scope', 'FileUploader', function ($scope, FileUploader) {
$scope.uploadMessage = 'Arraste aqui o arquivo';
var uploader = $scope.uploader = new FileUploader( { autoUpload: true, url: '/url'});
// FILTERS
uploader.filters.push({
name: 'customFilter',
fn: function(item /*{File|FileLikeObject}*/, options) {
return this.queue.length <= 1;
}
});
// Callbacks
uploader.onAfterAddingFile = function (item) {
$scope.uploadMessage = 'Enviando arquivo ' + item.file.name.toString();
};
uploader.onCompleteItem = function(item, response, status, headers) {
};
}]);
而我的servlet post函数是这样的:
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
}
Angular 组件帮助说有一个名为“alias”的属性 {String}:将包含文件的字段的名称,默认为文件。如果我使用 request.getParameter("file") 它是空的。
更新
我在我的服务器中使用 @MultipartConfig 注释,但是 request.getPart 始终为空。
【问题讨论】:
-
与从 Angular 调用任何其他 api 一样。请参阅示例 hmkcode.com/java-servlet-jquery-file-upload 和 stackoverflow.com/questions/28523453/…
标签: angularjs servlets servlet-3.0