2012-10-17 11 views
7

Mam usług odpoczynek powracającego JSON z jednego numeruKorzystanie obiekt JSON z usługi REST w angularjs

{"uptime":"44"} 

dostępny pod adresem URL:

http://localhost/uptime 

i chcę, aby wyświetlić tę wartość na stronie za pomocą angularjs .

pisałem zasób, aby uzyskać dane z tego odpoczynku URL:

angular.module('utilService', ['ngResource']). 
factory('UtilService', function($resource) { 
    var UtilService = $resource('/uptime', { }, 
     { 
      'get' : { method: 'GET', params: { format: '.json' } , isArray : false } 
     } 
    ) 


    UtilService.loadUptime = function(cb) { 
     return UtilService.get(); 
    } 

    return UtilService; 
}); 

Ale kiedy go używać w Kontroler:

angular.module('log', ['logService', 'utilService']); 


function UptimeCtrl($scope, UtilService) { 
    var time = UtilService.loadUptime(); 
    $scope.uptime = time; 
} 

widzę na mojej stronie { „czas pracy”: "44"}

Zgaduję, że muszę wyodrębnić/przekonwertować otrzymany obiekt na JSON i uzyskać jego właściwość "uptime". ale próbowałem JSON.parse, time.uptime, time ['uptime'] i bez powodzenia.

Robię coś zupełnie nie tak lub brakuje tu jakiegoś podstawowego problemu.

Odpowiedz

8

$resource po prostu zwróci obiekt, który zostanie zwrócony przez serwer, tak naprawdę nie można wykonać żadnych danych przed/po przetwarzaniu przy użyciu $ zasób. Ale nawet bez analizowania danych powinieneś być w stanie wyświetlić to, czego potrzebujesz. Biorąc przykład kodu, wyrażenie {{uptime.uptime}} w szablonie powinno załatwić sprawę.

+1

Och kochanie, czasami najprostsze rozwiązanie po prostu działa. Dzięki wielkie! –

Powiązane problemy