2017-09-06 42 views
1

我在asp.net中提供了Restful API服務,它提供了JavaScript的代碼供我使用,我需要在angular中使用它的函數。 我在這裏發佈的代碼有RestAPI函數,它包含對數據的調用,它應該返回JSON數據給我相信的調用函數。如果有人熟悉解決方案,請高度讚賞您的回覆。 謝謝你。從AngularJs調用Restful API函數

function RestAPI(){ self = this; } 
RestAPI.prototype = { 
    self: null, 
    urlString: "http://exclusiveautosales.azurewebsites.net/ExclusiveAutoSales_Handler.ashx", 
    GetFiltersMain:function(successFunction,failFunction,token) { 
     var data = { 'interface': 'RestAPI', 'method': 'GetFiltersMain', 'parameters': {}, 'token': token }; 
     var jsonData = dojo.toJson(data); 
     var xhrArgs = { 
      url: self.urlString, 
      handleAs: 'json', 
      postData: jsonData, 
      load: successFunction, 
      error: failFunction }; 
     var deferred = dojo.xhrPost(xhrArgs); 
    }, 
    GetMakeModelPrice:function(make_id,model_id,min_price,max_price,successFunction,failFunction,token) { 
     var data = { 'interface': 'RestAPI', 'method': 'GetMakeModelPrice', 'parameters': {'make_id':make_id,'model_id':model_id,'min_price':min_price,'max_price':max_price}, 'token': token }; 

     var jsonData = dojo.toJson(data); 
     var xhrArgs = { 
      url: self.urlString, 
      handleAs: 'json', 
      postData: jsonData, 
      load: successFunction, 
      error: failFunction }; 
     var deferred = dojo.xhrPost(xhrArgs); 
    }, 
    GetSearchResult:function(search_q,make_id,model_id,year_id,engine_id,color_id,body_id,transmission_id,fueltype_id,subfeature_id,minPrice,maxPrice,successFunction,failFunction,token) { 
     var data = { 'interface': 'RestAPI', 'method': 'GetSearchResult', 'parameters': {'search_q':search_q,'make_id':make_id,'model_id':model_id,'year_id':year_id,'engine_id':engine_id,'color_id':color_id,'body_id':body_id,'transmission_id':transmission_id,'fueltype_id':fueltype_id,'subfeature_id':subfeature_id,'minPrice':minPrice,'maxPrice':maxPrice}, 'token': token }; 

     var jsonData = dojo.toJson(data); 
     var xhrArgs = { 
      url: self.urlString, 
      handleAs: 'json', 
      postData: jsonData, 
      load: successFunction, 
      error: failFunction }; 
     var deferred = dojo.xhrPost(xhrArgs); 
    } 
}; 
+0

$http服務恕我直言 - 這不是一個RESTful API。 – jannis

回答

3

這可能會幫助您解決ASP.NET Web Service In AngularJS Using $HTTP

用戶享受安靜

var app = angular.module('myApp', []); 
     app .controller('RestAPI',function($scope, $http) {      
       $http({ 
        method : "GET", 
        url : "http://exclusiveautosales.azurewebsites.net/ExclusiveAutoSales_Handler.ashx", 
        data :{ 'interface': 'RestAPI', 'method': 'GetFiltersMain', 'parameters': {}, 'token': token } 
       }).then(function mySucces(response) { 
        $scope.jsonData = response.data; 
       }, function myError(response) { 
        $scope.jsonData = response; 
       }); 
      }); 
+0

它說令牌沒有定義,你能再請檢查一次嗎? – user3661745

+0

它顯示錯誤沒有'訪問控制允許來源' – user3661745

+0

它返回的HTML代碼,而不是json對象 – user3661745