반응형
AngularJS $resource는 url 대신 쿼리 파라미터로 ID를 전달합니다.
url의 product id 부분을 (쿼리 파라미터가 아닌) rest API에서 데이터를 취득해야 합니다.
공장:
.factory('Products', ['$resource',
function($resource) {
return $resource('products/:productId', {
productId: '@id'
}, {
query: {
isArray: false
},
update: {
method: 'PUT'
}
});
}
])
컨트롤러:
$scope.getProduct = function(id, from) {
$scope.product = Products.get({ id: id }, function(){
console.log($scope.product);
});
}
내 URL은 다음과 같이 구성됩니다.
/products?id=5426ced88b49d2e402402205
다음 대신:
/products/5426ced88b49d2e402402205
왜 그런지 알아요?
전화할 때Products.get()
컨트롤러에서 올바른 파라미터 이름을 사용하고 있지 않습니다('id' 대신 'productId'를 사용해야 합니다).$resource
대신 다음과 같이 호출해 보십시오.
Products.get({ productId: id })
다음은 그 원리에 대해 설명하는 문서의 일부입니다.
파라미터 오브젝트의 각 키 값은 처음에 URL 템플릿에 바인드되고 다음으로 초과 키가 url 검색 쿼리에 추가됩니다(있는 경우).
이 경우 URL에서 "id"를 매개 변수로 찾을 수 없으므로 쿼리 문자열에 추가합니다.
언급URL : https://stackoverflow.com/questions/26451858/angularjs-resource-passes-id-as-query-parameter-instead-in-url
반응형
'programing' 카테고리의 다른 글
이온 이력은 어떻게 동작하며 비루트 스택은 언제 작성됩니까? (0) | 2023.03.10 |
---|---|
AngularJS에서 여러 특정 모델 특성에 의한 필터링(OR 관계) (0) | 2023.03.10 |
우편번호를 데이터베이스에 저장해야 합니다.기둥은 얼마나 커야 합니까? (0) | 2023.03.10 |
Oracle Date - 지금까지의 연도를 추가하는 방법 (0) | 2023.03.10 |
angularjs에서는 ng-disabled 디렉티브가 있는데, 왜 ng-enabled 디렉티브는 ng-show와 ng-hide가 있는데 프레임워크에서 제공되지 않는가? (0) | 2023.03.05 |