2013-10-11 2 views
1

내가 자원과 각 서비스 있다고 가정 : 제가 arbirary 경로를 정의 할 수 있습니다이 같은 것을 확인 할 수있는 방법이 있나요

var res = $resource('/myurl/:index', {index: '@index'}) 

을 같은 나의 서비스 내에서 내가 전화 할 때 :

$ 입술을 .query()

자원을 실제로 서버를 호출하거나 서버가 query()를 지원하는 기능을 가지지 않고 "[1,2,3]"의 하드 코딩 된 출력을 얻을 수 있습니까?

답변

1

나는 이것이 조금 잘못되었다고 생각합니다. $resource은 지정된 API 끝점에 대한 URL 및 기타 매개 변수를 지정하는 서비스를 만들기위한입니다. 가짜 또는 테스트 API 엔드 포인트가있는 경우 하드 코딩 된 데이터를 리턴하는 위조 된 서비스를 작성하십시오. 여기

은 예입니다 :

.factory('TestDataResource', function() { 

    return { 
     query: function() { 

      // Return Hard-coded data 
      return [1, 2, 3]; 
     } 
    } 
}); 

그리고 당신은 어디에, 예를 들어, 또는 컨트롤러에서 사용할 수 있습니다 :

.controller('MyController', function($scope, TestDataResource) { 

    $scope.data = TestDataResource.query(); 
    // $scope.data should contain [1, 2, 3] 
}); 
+0

당신이 $ 약속을 사용할 수 있도록하려는 경우 작동하지 않습니다 .then 자원 객체의! –

0

$resource$httpBackend을 사용하여 반응을 조롱 할 수 있도록 커버 아래에 $http으로 전화합니다. This page에 대한 정보가 풍부합니다.

1

샘플 데이터로 JSON 파일을 사용할 수 있습니다.

관련 문제