2013-07-17 44 views
0

如何從我的角度控制器上傳文件。我正在做類似於ng-click的操作,我正在調用在控制器中聲明的upload_file()函數。我想用這樣的東西如何從ng-controller上傳文件?

$http.post("url", data).success().error(); 

url是節點上傳服務。當我使用like時它工作正常。但是如果不在那裏採取行動,我想從我的功能上傳它。
但我沒有得到如何將選擇的文件附加到這裏的數據。我想發送一些數據以及文件。我可以以我嘗試的方式上傳嗎?請幫我...

回答

0

您可以使用angular-file-upload庫:

基本上你需要$ http.post這樣的:

$http({ 
       method: 'POST', 
       url: config.url, 
       headers: { 'Content-Type': false }, 
       transformRequest: function (data) { 
        var formData = new FormData(); 
         formData.append('file', myFile); 
        for (key in myData) { 
         formData.append(key, myData[key]); 
        } 
        return formData; 
       } 
      }).success().error().progress() 

庫支持IE瀏覽器與Flash填充工具通常不支持FormData,因此您無法從<input file...>獲取文件對象。