2014-09-08 2 views
0

사이트에 json 파일을로드하려고하는데 URL에 파일 확장명이 없으면 파일이로드되지 않습니다.확장명이없는 리소스를로드하지 못했습니다.

eventsApp.factory('eventData', function($http, $q) { 
    return { 
     getEvent: function() { 
      var deferred = $q.defer(); 

      $http({method: 'GET', url: 'data/event/1.json'}). 
       success(function(data, status, headers, config) { 
        deferred.resolve(data); 
       }). 
       error(function(data, status, headers, config) { 
        deferred.reject(status); 
       }); 
      return deferred.promise; 
     } 
    }; 
}); 

이전 코드에서 ".json"을 제거하면 파일이로드되지 않습니다. 이것은 AngularJS에서 $ resource 객체를 사용하는 방법을 배우려고 노력하고 있다는 것을 제외하면 일반적으로 큰 문제가 아니므로 객체를 사용할 때 파일 확장자를 지정할 수 없으므로 오류가 발생합니다.

그래서 나는이를 사용하려고하면 다음 JSON 파일을로드하는 데 실패하고 영향을주지 않고 확장을 정의 할 수있는 방법이 있는지 확실히 모르겠습니다 것이다

eventsApp.factory('eventData', function($resource) { 
    var resource = $resource('/data/event/:id', {id: '@id'}, {"getAll": {method: "GET", isArray:true, params: {something: "foo"}}}); 
    return { 
     getEvent: function() { 
      return resource.get({id:1}); 
     }, 
     save: function(event) { 
      event.id = 999; 
      return resource.save(event); 
     } 
    }; 
}); 

"ID"변수를.

그래서 두 가지 방법으로 문제를 해결할 수 있다고 생각합니다. a) 확장을 정의하지 않고 파일을로드 할 수 있도록 시스템에서 무언가를 고칠 필요가 있습니다 (시스템 구성 오류가 있음을 의미합니다) 또는 b) ": id"파일에 영향을주지 않고 확장을 추가하는 JavaScript가있는 방법이 있습니다. 변하기 쉬운.

의견이 있으십니까?

답변

관련 문제