2015-04-06 71 views
0

我有一個控制器方法如下。

public class ProcessorController : System.Web.Http.ApiController 
{ 

    [HttpPost] 
    public void Paid(string confirmationNumber) 
    { 

    } 
} 

我想從角度js中的函數調用此方法如下。 $ http.post不起作用。當它嘗試擊中$ http.post中指定的路徑時,我在小提琴手中看到一個錯誤「資源無法找到」。任何人都可以請指出這裏出了什麼問題嗎?謝謝!

var payControllers = angular.module('payControllers', []); 
payControllers.controller('payCtrl', ['$scope', '$http', 
     function ($scope, $http) { 

     $scope.Process = function(confnumber) { 
     $scope.ConfNumber = confnumber; 

      if ($scope.ConfNumber.length > 0) { 
        $http.post('/Processor/Paid', 
         { 
          confirmationNumber: $scope.ConfNumber 
         } 
        ).success(function() { 
         alert('updated') 
        }); 
       } 
    } 
}]); 
+0

不知道,但不應該的URL是 '/ API /處理器/付費'? – shakib

+0

謝謝。這個問題是與網址。 – Jyina

+0

如果只有你問過public void Paid(MyLittleObject obj),MyLittleObject有幾個標量。我死在這一個。 – granadaCoder

回答

2

試試:

var payControllers = angular.module('payControllers', []); 
payControllers.controller('payCtrl', ['$scope', '$http', 
     function ($scope, $http) { 

     $scope.Process = function(confnumber) { 
     $scope.ConfNumber = confnumber; 

      if ($scope.ConfNumber.length > 0) { 
        $http({ 
          url: '/api/Processor/Paid?confirmationNumber='+$scope.ConfNumber, 
          method: 'POST' 
        }).success(function (data) { 
         alert('updated'); 
        }); 
       } 
    } 
}]); 
+0

謝謝。它運作良好。 – Jyina