2013-04-10 2 views
1

나는 ajax를 사용하여 웹 서비스를 호출하는 C# 웹 응용 프로그램이 있습니다. 아약스 코드는 보이는 같은Ajax 호출 webservice

$.ajax({ 
        type: 'GET', 
        url: "WebServices/testwebService.asmx/Methodname", 
        contentType: "application/json; charset=utf-8", 
        data: { value: "string" }, 
        dataType: 'xml', 
        success: function (data) { 
         alert(data); 
        }, 
        error: function (data) { 
         alert("In error"); 
        } 

       }); 
      }); 

아래 서비스 '웹 서비스/testwebService.asmx/methodName로는'여기

임주는 유형이있는 경우 (문자열 또는 일 수있다) 문자열의 목록을 반환로 : 'GET' dataType : 'json'오류 부분으로 리디렉션 중입니다.

유형이 'POST'인 데이터 유형 'json'또는 'string'또는 유형이 'GET'인 데이터 유형 'xml'또는 'string'인 경우 성공한 부분으로 리디렉션됩니다. 그리고 'xml'형식의 데이터 형식 : 'POST'는 오류 부분으로 리디렉션됩니다.

저는 아약스의 dataType 개념과 혼동합니다.

파이어 버그를 체크했을 때 응답 데이터는 항상 xml 형식이어야합니다.

+0

아마도 웹 서비스가 JSON 데이터를 반환하지 않으므로 구문 분석 오류가 발생했을 수 있습니다. – yogi

+0

ajax에서 예상하는 형식으로 webservice의 데이터를 구문 분석해야합니까? 또는 자동으로 데이터를 구문 분석하는 모든 유형의 일을 webservice? – Sudha

답변

1

json dataType을 사용하는 경우 서버는 json을 반환해야합니다. dataTypes와 관련하여 의심스러운 점이 있으시면 this 링크로 이동하십시오.

1

ASMX SOAP 웹 서비스는 값 'POST'를 가져야 이상적 '타입'AJAX 호출에 파라미터 HTTP-POST Protocol.So을 이용하는 방법을 호출 . (check the MSDN documentation)

데이터 유형 관련하여, 응답 데이터는 순전히 Ajax 호출에서 언급 한 내용 유형 & 데이터 유형에 따라 달라집니다. 데이터 유형 매개 변수의 영향 JQuery는 서버의 응답을 처리합니다. 이는 SOAP 웹 서비스의 XML입니다.

데이터 형식 매개 변수 값을 'xml'로 설정하면 성공 콜백 함수에서 XML 문서가 생성됩니다. JSON으로 만들면 success 콜백 함수에서 JSON Object를 가져옵니다.