0
我想用$ resource的AngularJS从客户端上传文件。
需要将FormData发送到服务器。
我用下面的代码试图
MyFile.tpl.html
<input file-model="uploadingfile" type="file"/><br/>
MyDirective.js
angular.module('upload.upload', [
])
.directive('fileModel', ['$parse', function ($parse) {
return {
restrict: 'A',
link: function(scope, element, attrs) {
var model = $parse(attrs.fileModel);
var modelSetter = model.assign;
element.bind('change', function(){
scope.$apply(function(){
modelSetter(scope, element[0].files[0]);
});
});
}
};
}]);
MyController.js
var myservercall = $resource("my/rest/path/:filename", { filename: '@filename'});
var file = $scope.uploadingfile;
var fd = new FormData();
fd.append('upload', file);
myservercall.save({filename: file.name}, here i don't know how to send the form data);
我如何做这个工作?
什么类型的文件?上传功能目前是什么样的? Angular是一个客户端MVC框架。你在服务器端使用什么?这将是代码的实现方式;你在Angular中几乎没有它(最好它只是一个Angular资源)。你有一个REST端点来上传文件吗? –
是的,我正在使用REST端点来上传文件。我的服务器端是EJB – prince