Метод AngularJS $ http get возвращает & quot; Массив & quot; вместо содержимого массива

1-й извините, пожалуйста, мой английский я французский;)

Я столкнулся с проблемой, которую не понимаю, несмотря на множество исследований в сети. Я уверен, что кто-то более опытный, чем я, мог бы помочь мне, потому что я все еще студент.

Я делаю http получить из угловатый приложения, но возвращаемые данные — это строка «Array» вместо содержимого массива.
Вот мой код:

app.controller('WatchCtrl', function($scope, $http){
$scope.getAll = function(){
$http.get('http://www.myserver.com/videos/script.php')
.then(function(response){
$scope.videos = response.data;
console.log(response); //to debug
});
}
$scope.getAll();
});

На стороне сервера мой PHP-скрипт просто делает эхо [‘a’, ‘b’, ‘c’] чтобы проверить. Если я отображаю строку типа «привет», я могу манипулировать ею на стороне клиента, но как только это массив, свойство данных ответа становится просто «Массив».

Консоль не показывает никаких сообщений об ошибках. Чтобы отметить, я положил заголовок («Access-Control-Allow-Origin: *») в моем сценарии, чтобы принять перекрестное происхождение. Я не знаю, играет ли это роль в этом сценарии.

0

Решение

Вы не можете использовать echo для рендеринга массива, так что используйте это на стороне сервера:

print json_encode(array('a','b','c'));
0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]