web-dev-qa-db-fra.com

Angularjs accède aux fichiers json locaux

Angularjs est nouveau sur mon site et je cherche sur le Web toute la journée pour trouver une solution permettant d’obtenir des données à partir d’un fichier JSON local sans avoir à utiliser un hôte local pour mon application Web. Malheureusement, je n'en ai trouvé aucun. J'ai essayé d'utiliser $ http.get mais j'obtiens une erreur Cross Origin *.

N'y a-t-il pas d'autre moyen de récupérer les données de mon fichier json local sans avoir à héberger localement ma webapp?

Angularjs a-t-il une autre fonction pour obtenir des données à partir de fichiers JSON locaux sans avoir à utiliser son $ http.get?

31
Jibo

Vous devez déployer votre application sur un serveur http. Pour ce faire, le plus simple consiste à utiliser un nœud. Voici l'exemple: https://www.npmjs.org/package/http-server , ou vous pouvez modifier les paramètres de sécurité de votre navigateur.

4
Grissom

Vous pouvez vous référer au fichier json en les appelant avec une méthode GET, comme ceci:

$http.get('phones/phones.json').success(function(data) {
   $scope.phones = data;
});

Consultez le tutoriel officiel AngularJS pour voir ce que vous faites de travers.

Mise à jour:

Pour angular 1.6 + _ la méthode success n'est plus valide à la place, utilisez then :

$http.get('phones/phones.json').then(function(data) {
   $scope.phones = data;
});

Reportez-vous à la source ici.

31
Kutyel