2016-01-10 2 views
0

Я пытаюсь получить доступ к JSON от http://localhost:8080/daddy/. Эта страница работает на сервере Glassfish в фоновом режиме. Я могу открыть URL из браузера, и я получаю следующий результат:AngularJS не имеет доступа к localhost: 8080

{"id":11,"content":"Hello, World!"} 

Но когда я пытаюсь получить доступ к нему из AngularJS я получаю следующий результат:

{"data":null,"status":0,"config":{"method":"GET","transformRequest":[null],"transformResponse":[null],"url":"http://localhost:8080/daddy/","headers":{"Accept":"application/json, text/plain, */*"}},"statusText":""} 

***** ** AngularJS Script ********

app.controller("HttpController", ['$http', function($http){ 

     var currentInstance = this; 

     currentInstance.data = {}; 

    $http({ 
     method: 'GET', 
     url: 'http://localhost:8080/daddy/' 
    }).then(function successCallback(response) { 
     currentInstance.data = response; 

     }, function errorCallback(response) { 
     currentInstance.data = response ;  
     }); 

}]); 

Но когда я использую любой общедоступный URL для получения JSON, он возвращает просто отлично. Кажется, что проблема с localhost. Любая помощь будет признательна!

+0

Есть ли сообщение об ошибке в консоли отладчика? – PSWai

+0

не должно быть 'response.data' в вашем обратном вызове? – TheLazyChap

+0

@TheLazyChap 'data' кажется' null' – PSWai

ответ

0

С первого взгляда, я не вижу никакого файла json? например:

$http({ 
    method: 'GET', 
    url: 'http://localhost:8080/daddy/file.json' 
}).then(function successCallback(response) { 
    currentInstance.data = response; 

    }, function errorCallback(response) { 
    currentInstance.data = response ;  
    }); 

Вы используете приложение на локальном хосте тоже, и вы будете развернув его вместе с JSON, если да, то почему вы ссылки на него с помощью локального хоста? почему не

$get('../daddy/file.json/').then(function(response)){ 

    }); 

Я довольно новичок в угловом, но, возможно, это может вам помочь.

Смежные вопросы