Я делаю запрос GET для извлечения сообщений, но когда я загружаю страницу, он делает первый запрос с правильным запросом page
в URL-адресе запроса, а затем немедленно делает другой запрос с page
набор к 1. Вот вывод на консоль, когда я сделать запрос на page=3
:.Http-вызов выполняется дважды с сбросом параметров
"page: 3"
bolt.js:54 Object {method: "GET", url: "http://localhost/api/v1/content/news?order=datepublish%20DESC&limit=10&page=3", headers: Object}
bolt.js:54 Object {method: "GET", url: "http://localhost/api/v1/content/news?order=datepublish%20DESC&limit=10&page=1", headers: Object}
bolt.js:58 "success function called."
posts.controller.js:35 Object {data: Object, status: 200, headers: function, config: Object, statusText: "OK"}
bolt.js:58 "success function called."
Таким образом, вы можете видеть это явно делает два запроса GET, но возвращает только один набор данных (последний, с page=1
В моем posts.controller.js
у меня есть:
activate();
function activate() {
$scope.isLoading = 1;
$scope.previousLink = 0;
return getPosts($stateParams.page).then(function(data) {
$scope.isLoading = 0;
$rootScope.pageLoading = 0;
});
}
function getPosts(page) {
console.log("page: " + page);
var contenttype = 'news';
var order = 'datepublish%20DESC';
var limit = 10;
return Bolt.getRecords(contenttype, order, limit, page)
.then(function(data){
// Below is line 35
console.log(data);
$scope.posts = data.data.data;
});
}
И Bolt
сервис (bolt.js):
function getRecords(contenttype, order, limit, page) {
var request = {
method: 'GET',
url: API_BASE_URL + 'content/' + contenttype +
'?order=' + order +
'&limit=' + limit +
'&page=' + page,
headers: {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
};
// Below is line 54
console.log(request);
return $http(request)
.success(function(data){
// Below is line 58
console.log("success function called.");
return data;
})
.error(function(error){
return error;
});
}
Что я здесь делаю неправильно?
Похоже, что что-то еще вызывает функцию 'getRecords'. Может быть, какой-то код отладки? Вы пытались помещать точку останова отладчика в 'getRecords', чтобы вы могли видеть, что трассировка стека каждый раз, когда она вызывается? – JLRishe
Вы уверены, что первый запрос не является предлогом междоменного запроса AJAX? – Aetherus