如何在本地主机中访问json文件的元素?

时间:2015-06-05 11:13:52

标签: json angularjs

我需要使用 $ resource 从我的数据中选择一个元素,但是我有这个错误:

  

“错误:$ produit1未定义GET XHR   http://localhost:8080/Jquery/data/produits.json/1 [HTTP / 1.1 404   Introuvable 15ms]

我认为问题来自此网址:http://localhost:8080/Jquery/data/ produits.json / 1

因为当我把它放在我的浏览器上时,这个网址http://localhost:8080/Jquery/data/produits.json是可以的,我可以看到数据,第一个不显示数据(Etat HTTP 404 - /Jery/data/produits.json/1)< / p>

[
{
"id" : 1,
"reference": "AAA",
},
{
"id" : 2,
"reference": "BBB",
}
]

如何通过网址调用我的元素?

这是我的代码:

  <!DOCTYPE html>
    <html>
    <head>
    <meta charset="ISO-8859-1">
    <title>Angular ngResource</title>
    <script src= "https://ajax.googleapis.com/ajax/libs/angularjs/1.3.14/angular.min.js"></script>
    <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.3.14/angular-resource.min.js"></script>
    <script>
        var myApp = angular.module('myApp', ['ngResource']);

        myApp.factory('Produits',['$resource', function ($resource) {
            return $resource('data/produits.json/:id',{id: "@id"},
                     {
                        'update': {method: 'PUT'},
                        'reviews': {method: 'GET'}
                     }
            );
        }]);

        myApp.controller('produitsCtrl', function($scope, $http,Produits,$log) {

        $scope.produits= Produits.query();

        $scope.produit1 = Produits.get({'id': 1});

        });


    </script>
    </head>
    <body>

        <div ng-app="myApp" >

            <div ng-controller="produitsCtrl"> 

                Reference  1 :  {{ produit1.reference }}
            </div>
        </div>

    </body>
    </html>

1 个答案:

答案 0 :(得分:1)

那就是你的电话:

$resource('data/produits.json/:id',{id: "@id"},

正在寻找关于你传递的id生成的json。所以你的应用程序希望有一个json文件,只有在你的路由id = 1存在并且返回一个json时才存在。

$scope.produit1 = Produits.get({'id': 1});

应该返回一个json文件,其中的元素与您当前的元素一样。

如果你想使用json中包含的数据,你需要这样做:

 var Produits = $resource(data/produits.json);

 myApp.controller('produitsCtrl', function($scope, $http,Produits,$log) {
              var upd = {
                 "id": 1,
                 "reference": "REF"
              }

              Produits.$update(upd.id);

         });