2015-10-23 101 views
-1

Web服務消費,我建立一個應用程序科爾多瓦,我需要的是調用在JavaScript肥皂web服務(阿賈克斯與否),但我不斷收到:(內部服務器錯誤)肥皂與阿賈克斯

我的代碼:

var soapMessage = 
      '<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">'+ 
       '<soap:Body>'+ 
        '<getList xmlns="http://tempuri.org/">'+ 
        '<M><H><WS>FrameWorkService</WS><F>getList</F><K>KeyElencoSoggettiTemplateInd</K><DS>ElencoSoggettiTemplate</DS><TB>SoggettiTemplate</TB></H><B><P><p_lingua>IT</p_lingua><p_opeId>NETA</p_opeId><p_socId>283</p_socId><p_eseId>1248</p_eseId><p_SogTemId></p_SogTemId><p_SogTemCod></p_SogTemCod><p_SogTemDes>A</p_SogTemDes><p_tipRic>I</p_tipRic><p_CodFisc></p_CodFisc><p_PartIva></p_PartIva><p_IscrCamCom></p_IscrCamCom><p_LocalitaDes></p_LocalitaDes><p_TipoIndId>SL</p_TipoIndId><p_CategoriaId></p_CategoriaId><p_TemplateId>1</p_TemplateId><p_Professionista>N</p_Professionista><p_PersonaFisica>N</p_PersonaFisica><p_NazId></p_NazId><p_ordinamento></p_ordinamento></P><NP>1</NP><RP>14</RP><TP>auto</TP></B></M>'+ 
        '</getList>'+ 
       '</soap:Body>'+ 
      '</soap:Envelope>'; 


     $.ajax({ 
      //web service pubblico di prova 
      url: ".../FrameWorkService.asmx", 
      type: 'POST', 
      dataType: "xml", 
      contentType: "text/xml; charset=\"utf-8\"", 
      headers: { 
       SOAPAction: ".../FrameWorkService.asmx?op=getList" 
      }, 
      data: soapMessage, 
      success: function(soapResponse){ 
       alert(soapResponse); 
       }, 
       error: function (request, status, error) { 
        alert(request); 
        alert(status); 
        alert(error); 
       } 
      }); 
+0

在測試時,比如從郵遞員或其他任何地方進行測試時,這個信封是否可以工作? –

+0

'...... /'看起來不太正確。 –

+0

也許我不想分享我的公共webService ??????? – Lorenzo

回答

0

在Cordova中,你的頁面和JS將被本地加載到webview中,本質上是一個file:// URL ...所以,你需要在$ .ajax調用的URL中設置完整的URL到你的服務器設置。

如果您使用的是Cordova 5,並且此服務器未受SSL保護,您可能還需要在HTML中的元標記中配置Cordova的內容安全策略。

此外,如果您運行的是iOS 9,則可能還需要爲您的服務器配置App Transport Security例外。這兩種配置在Stack Overflow上都有詳細記錄。