반응형
jQuery ajax 요청이 작동하며 동일한 각도JS Ajax 요청이 수행되지 않음
나는 앵글을 배우고 있다.JS와 워드프레스에서 데이터를 가져오는 프런트 엔드 시스템을 구축하려고 합니다.
백엔드 측에서는 모든 것이 올바르게 설정되어 있는 것 같고, jQuery ajax request를 사용하면 문제없이 데이터를 얻을 수 있습니다.
jQuery.ajax({
type: 'POST',
url: '/wp-admin/admin-ajax.php',
data: {
action: 'getdataajax'
},
success: function(data, textStatus, XMLHttpRequest){
console.log(data);
},
error: function(MLHttpRequest, textStatus, errorThrown){
console.log(errorThrown);
}
});
하지만 AngularJS에서도 같은 동작을 하려고 하면 동작하지 않습니다.Ajax 요청을 다음과 같은 코드로 복제하려고 합니다.
myApp.factory('productsData', function($http, $log) {
return {
getProducts: function(successcb) {
return $http({
method: 'POST',
url: '/wp-admin/admin-ajax.php',
data: {action: 'getdataajax'}
}).success(function(data, status, headers, config) {
successcb(data);
$log.info(data, status, headers(), config)
}).error(function(data, status, headers, config) {
$log.warn(data, status, headers(), config)
});
},
};
});
로그에 기록하면 0이 출력됩니다.제가 무엇을 빠뜨리고 있나요?
도와주셔서 고마워요.
P.S. 컨트롤러는 다음과 같습니다.
myApp.controller('ProductsController', function ProductsController($scope, productsData) {
$scope.sortorder = 'name';
// $scope.products = productsData.products;
// $scope.products = productsData.getProducts();
productsData.getProducts(function(products){
$scope.products = products;
});
});
angularjs 코드에서params:대신data:.
jquery에서 오브젝트는 에 공급됩니다.data:config 설정은 사용자가 설정하지 않는 한 쿼리 문자열(?key1=val1&key2=value2)로 변환됩니다.processData: false. angularjs 에서는 다음과 같이 해야 합니다.params:쿼리 문자열을 가져오려면data:json 또는 string으로 전송됩니다.
언급URL : https://stackoverflow.com/questions/18967307/jquery-ajax-request-works-same-angularjs-ajax-request-doesnt
반응형
'programing' 카테고리의 다른 글
| HTML 내의 형식 스크립트 열거에 접근할 수 없습니다. (0) | 2023.03.31 |
|---|---|
| AngularJ: 전체 DOM 트리를 재구축하지 않고 동적 목록을 사용하여 ng-repeat? (0) | 2023.03.31 |
| React.js 컴포넌트 내부의 컴포넌트를 렌더링하는 방법 (0) | 2023.03.31 |
| 리액트 테스트 라이브러리:userEvent.click을 사용할 때와 fireEvent를 사용할 때 (0) | 2023.03.31 |
| angularjs 양식을 제출한 후 유효하지 않은 모든 필드에 빨간색 테두리 표시 (0) | 2023.03.31 |