2016-01-28 73 views
0

我試圖做一個電話後用一個簡單的對象,它具有這樣的結構:角度支柱用JSON文件對象

{"name": "file.txt", "file": file} 

file是一個對象,我從一個輸入文件中獲取。

我曾嘗試撥打這個電話,但我不能提交我的對象:

var elements = $element[0]; 
var file = elements.getElementsByTagName('input')[0].files[0]; 
this.fileName = file.name; 

var formData = new FormData(); 
formData.append('file', file); 

var url = 'http://localhost:8080/upload'; 
var config = { 
    transformRequest: angular.identity, 
    headers: {'Content-Type': undefined} 
}; 
$http.post(url, formData, config) 
.success(function(data){ 
    $log.info(data); 
}) 
.error(function(err){ 
    $log.error(err); 
}); 

爲什麼這是行不通的任何想法?

+0

您是否正在獲取文件詳細信息,在更改時選擇了輸入類型文件? – Jigar7521

回答

1

我最近不得不做一些類似的事情,花了很多時間去請求通過,但這個配置最終對我們有效。

sendObj.append("file", fileObj.file, fileObj.file.name); 
    $http({ 
      headers: {'Content-Type': undefined}, 
      processData:false, 
      method: 'POST', 
      cache: false, 

      url: sendUrl, 
      data: sendObj, 
         transformRequest: function(data, headersGetterFunction) { 
             return data; // do nothing! FormData is very good! 
         } 
     }) 

在一個側面說明,也搞亂了關於在服務器端所以這取決於你擁有什麼,你可能需要做別的東西很多。這是我們的Spring服務器。