묻고답하기
page_full_width" class="col-xs-12" |cond="$__Context->page_full_width">
boardAPI사용하려면 어떻게 해야 하나요?
2009.10.09 10:50
예전엔 view class에다가 requestMethod를 강제로 json으로 변환해서 사용했었는데 ,
api를 사용하면 저런 변환없이도 나중에 템플릿 컴파일시 자동으로 변환해주는거 같은데 문제는 사용법을 모르겠습니다;
jQuery 이용해서 $.ajax({url : "./xe?mid=board&document_srl=100&act=dispBoardContentView",
type :'json',
success : function(data){
console.log(data);
});
이렇게 테스트를 해봤는데 ;;계속 그냥 에러 없다는 그런 문자열만 나오고, 데이터는 안나오네요. 보니까 api에 해당하는 action 없어서 , api를 실행을 하지 않는데, document_srl값 때문에 action이 강제적으로 dispBoardContent로 바뀌어 버려서 api가 실행이 안되더군요,
해당 문서에 json을 얻으려면 어떤식으로 호출을 해야 하는지 궁금합니다.
댓글 1
-
제이재희
2009.10.09 17:38
-
제이재희
2009.10.09 17:42
아직 이유는 모르겠는데 ; type : 'post'로 하고 data 필드를 셋팅해줘야 되네요, type이 get인 상태에서는 안됩니다.
음. 겨우 알았네요 ;;
jQuery 이용해서 $.ajax({url : "./xe?mid=board&document_srl=100&act=dispBoardContentView",
type :'json',
success : function(data){
console.log(data);
});
제가 Context클래스에 _setRequestMethod를 제대로 안보고 method의 type을 건드리는게 아니라, contentType을 건드려야 했습니다.
jQuery 이용해서 $.ajax({url : "./xe?mid=board&document_srl=100&act=dispBoardContentView",
type :'get',
contentType : 'application/json',
success : function(data){
console.log(data);
});
이렇게 했는데도 불구하고 contentType을 json으로 인식을 안하더라구요 ; 그래서 jQuery소스를 보니까, contentType을 셋팅하기전에 data라는 필드가 존재하는지 체크해서 data라는 필드가 존재하지 않으면, contentType체킹하는것을 skip을 해버립니다. 그래서 data파라미터를 셋팅하고 테스트 하니까 잘되네요;;; 이걸로 오늘 몇시간 삽질을 한것인지 ..;;