2012-10-08 3 views
6

일부 데이터를 서버에 게시 할 AngularJS 자원 모듈을 작성하려고합니다. 기본 컨텐츠 유형은 "application/xml"입니다. 나는 content-type을 "application/x-www-form-urlencoded"로 바꾼다. 정상적인 $ http.post()를 수행 할 때 컨텐트 유형을 설정할 수 있으며 Firebug를 체크인 할 때 제대로 설정되었는지 확인할 수 있습니다. 리소스의 POST 메서드를 사용할 때 컨텐트 유형을 기본값에서 변경할 수 없습니다. 나는 documentation의 설명에 따라 그것을하고 있다고 생각합니다. AngularJS와 자원이 다른 콘텐츠 형식으로 게시하는 방법에 대한AngularJS 자원이 설정되어 있지 않습니다. Content-Type

http://jsfiddle.net/vBsUH/3/

var myApp = angular.module('myApp',['myResource']); 

angular.module('myResource', ['ngResource']).factory('myResource', function($resource){ 
    return $resource('/echo/json',{},{ 
     add:{ method:'POST', params:{ foo:'1' }, headers:{'Content-Type':'application/x-www-form-urlencoded'} } 
    }); 
}); 

function MyCtrl($scope,$http,myResource) { 
    $scope.click = function() { 

     //This will make an ajax call with a content-type of application/xml  
     myResource.add(); 

     //this will make an ajax call with a content-type of application/x-www-form-urlencoded 
     $http.post('/echo/json','foo=1',{'headers':{'Content-Type':'application/x-www-form-urlencoded'}}); 

    } 
}​ 

어떤 아이디어 나 사례가 많이 주시면 감사하겠습니다.

답변

1

제이크, 어제 비슷한 질문에 대한 약간의 정보를 제공 : https://stackoverflow.com/a/12876784/1367284

붙여 넣기 해당 응답 아래 : (10월 12일 현재) 개발 문서가 헤더를 무시하는 것은 $ 자원에 가능하다는 것을 보여하지만

, 아직 릴리스되지 않았습니다 (v1.0.2 또는 v1.1.0). 그러나이 기능은 v1.0.x 및 마스터 분기에 있습니다. 이 기능을 사용하려면 지금 v1.0.x 지점에서 구축하는 것이 좋습니다.

구축하는 방법 : http://docs.angularjs.org/#H1_4

또는 스냅 샷 빌드에서 당겨 수 :이 기능은 다음 버전에있을 것 같은 http://code.angularjs.org/snapshot/

보인다.

관련 문제