2014-11-11 2 views
0

나는 Sencha에서 HelloWorld에 대한 테스트를 해왔지만, 어쨌든 responseXML을 사용하여 작동시키지 못한다. 내 코드 Sencha에서 SOAP WebService를 사용합니까?

Ext.Ajax.request({ 
     url: 'http://url/MobileService/MobileWS.asmx', 
     callbackKey: 'callback', 
     scope: 'this', 
     method: 'POST', 
     headers: {'Content-Type': 'application/soap+xml; charset=utf-8; action="http://tempuri.org/HelloWorld"'}, 
     success: function(response) { 
      // OK 
      alert("ok"); 
      alert(response.responseXML); 

     }, 
     failure: function(response) { 
      // KO 
      alert("errpr"); 
      alert(response.resposeText); 
     }, 
     xmlData: '<?xml version="1.0" encoding="utf-8"?>\n<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" xmlns="http://tempuri.org/HelloWorld"><soap:Header/><soap:Body><HelloWorldResult>string</HelloWorldResult></soap:Body></soap:Envelope>' 
    }); 

이 코드 조각

가,에서 responseText에 내가 필요로하는 모든 XML 정보를 반환하지만, responseXML에에 나타나지 않습니다 ...이 같은 것입니다. 또한 XML 키를 찾고 가치를 얻는 방법을 모르겠습니다.

큰 입력란을 포함해야하는 더 큰 서비스를 사용하려고 할 때 실제 문제가 발생합니다. 문제는 단순히 작동하지 않는다는 것입니다. 아마 그것을 잘못하고있는 잼. 헤더 키가 나오기 전에 다른 코드에 추가하는 것입니다.

params:{filter:'SomeName'} 

는 좀 엽차 설명서를 읽고 있고, 나는 모델과 SOAP WebService를 소비하는 소스를 모두 만들 수있는 몇 가지 방법이있을 것을 발견,하지만 난 그렇게 할 수 없다는하고있다. 어떤 도움?

답변

0

어딘가에 있습니다. 그것은 내 것이 아닙니다 :

브라우저가 반환 된 XML 문서를 구문 분석하려면 HTTP 응답의 Content-Type 헤더를 "text/xml"또는 "application/xml"로 설정해야합니다. 이것은 매우 중요합니다. 그렇지 않으면 XmlReader가 올바르게 작동하지 않습니다.

어쨌든 JSON으로 가고 싶을 수도 있습니다. 이 링크를 사용해보십시오.

http://davidwalsh.name/convert-xml-json 
관련 문제