因为input选择图片然后提交到服务器后会返回一个json数组的返回值,用传统的form表单提交图片,图片是能传上去了,但是没法接收到返回值。用的是angularjs框架,就想问一下可以把input选择到的图片放到formdata里传给服务器么?如果可以,具体要怎么实现?
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
直接用$http的post方法就可以做到,具体的可以参考这篇博客:Multipart/form-data File Upload with AngularJS
.service('fileUpload', ['$http', function ($http) {
this.uploadFileToUrl = function(file, uploadUrl){
var fd = new FormData(); //初始化一个FormData实例
fd.append('file', file); //file就是图片或者其他你要上传的formdata,可以通过$("input")[0].files[0]来获取
$http.post(uploadUrl, fd, {
transformRequest: angular.identity,
headers: {'Content-Type': undefined}
})
.success(function(){
})
.error(function(){
});
}
}]);