2017-01-07 21 views
0

こんにちははここに私のJSON "名前":HTTP GETとPOST角度

[ 
    { 
     "file": "file1.zip", 
     "date": "12-03-2016", 
    }, 
    { 
     "file": "file2.zip", 
     "date": "24-06-2016", 
    }, 
    { 
     "file": "file3.zip", 
     "date": "02-12-2016", 
    }] 

マイジャバスクリプトファイル:

var app = angular.module('app', []); 
    app.service('service', function($http, $q){ 
     var deferred = $q.defer(); 

     $http.get('newapi.json').then(function(data){ 
      deferred.resolve(data); 
     }); 

     this.getNames = function(){ 
      return deferred.promise; 
     } 
    }); 
    app.controller('FirstCtrl', function($scope, service){ 
     var promise = service.getNames(); 
     promise.then(function(data){ 
      $scope.names = data.data; 
      $scope.namesplit = $scope.names; 
      $scope.namesplit.map(function(item) { 
       item.time = new Date(item.date * 1000); 
      }); 
      console.log($scope.namesplit); 
     }); 
     }); 

とHTML:

<tr ng-repeat="name in names"> 
    <td>{{name.file}}</td> 
    <td>{{name.date}}</td> 
    <td><button>POST</button></td> 
</tr> 

は、まあ、私はテーブルを持っており、私が必要とするのは、ボタンをクリックすると、「ファイル」のserwerへの投稿です。私は$ http.postを使用しなければならないことを知っているが、私はそれをやる方法を知らない。

+0

サーバー上にファイル(file1.zipなど)をアップロードしますか? – conventi

+0

@conventiはい、をクリックしてください。 – bafix2203

+0

https://docs.angularjs.org/api/ng/service/$http#post –

答えて

0

だから、シンプル Htmlの

<button ng-click="post()">Click Me</button> 

アップロードあなたがheadersとし、transformRequestのようないくつかの追加のパラメータを設定する必要が$http.post()機能を使用してファイルをするためのコントローラ

$scope.post=function(){ 
$http.post(URL HERE, data-here, {  
}) 
    .then(function onSuccess(response) { 
    // Handle success 
    var data = response.data; 
    var status = response.status; 
    var statusText = response.statusText; 
    var headers = response.headers; 
    var config = response.config; 
    ... 
    }). 
    catch(function onError(response) { 
    // Handle error 
    var data = response.data; 
    var status = response.status; 
    var statusText = response.statusText; 
    var headers = response.headers; 
    var config = response.config; 
    ... 
    }); 
    } 
+0

申し訳ありません。私は単語のファイルを見ませんでした。 –

+0

私は十分な評判がなかったのでここにコメントしています –

0

。ここでは簡単な例

$scope.postToServer = function(){ 
    var fd = new FormData(); 
    fd.append('file', file); 
    $http.post(uploadUrl, fd, { 
     transformRequest: angular.identity, 
     headers: {'Content-Type': undefined} 
    }) 
    .success(function(){ 
    }) 
    .error(function(){ 
    }); 
} 

注:この例では、ファイルvarがクライアント・ファイル・システム上にあるファイルの内容であり、uploadUrlがリクエストを扱うあなたのサービスのURLです。