我正在根據僱用我的公司開發的現有Web應用程序創建移動應用程序,他們希望我儘可能多地使用現有的後端應用程序,結束和中間件。我使用Visual Studio社區與科爾多瓦混合應用程序,並沒有製作本地應用程序的計劃。現在我在調用SOAP Web服務時遇到了嚴重的問題。Web服務麻煩 - Apache Cordova - Visual Studio 2015 Comunity
限制:
的Web應用程序部署在JBOSS,並且不使用servlet,而不是 其與Java客戶端
我只可以使用JavaScript調用服務,htlm5和CSS(由於科爾多瓦,但可以實施本地API)
我至今嘗試:
直接通過AJAX調用調用它,我的最後一次嘗試是這樣的:
VAR productServiceUrl = 「http://localhost/searchUserDataWS/SearchUserDataWS?wsdl」;
function beginSaveProduct() { var soapMessage = '<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:sear="http://searchuserdataws.alist.integra.la/"> \ <soapenv:Header/> \ <soapenv:Body> \ <sear:searchUserBasicData> \ <!--Optional:--> \ <header> \ <!--Optional:--> \ <chanel>?</chanel> \ <!--Optional:--> \ <ip>?</ip> \ <!--Optional:--> \ <user>?</user> \ </header> \ <!--Optional:--> \ <email>[email protected]</email> \ </sear:searchUserBasicData> \ </soapenv:Body> \ </soapenv:Envelope>' $.ajax({ url: productServiceUrl, type: "POST", dataType: "xml", data: soapMessage, complete: endSaveProduct, contentType: "text/xml; charset=\"utf-8\"" });
有了這個代碼即時得到404錯誤從服務器和Im 100%,該SOAP消息是正確的(如我上SOAPUI測試和服務答案如預期)
我也嘗試過這個插件:https://github.com/doedje/jquery.soap調整了一下後,我設法讓它發送正確的請求(我嘗試了SOAPUI並得到了正確的響應),但是,當我在Android模擬器中運行它時有500個錯誤(內部服務器錯誤)。這個特定的錯誤意味着我與服務聯繫,但是XML無法處理(這很奇怪,因爲SOAPui上的XML相同)。我懷疑它是一個CORS錯誤,因爲我在本地主機上運行了所有東西。
一位同事嘗試使用C#的控制檯應用程序,該應用程序從服務中獲得正確的答案。我們想過做一個C#庫,用於調用服務但我們還不知道如何調用從科爾多瓦
我的問題一個C#方法,所有的方法:應該是什麼我的下一步是什麼?創建一個調用服務的API,繼續嘗試C#庫或其他不同的東西?
下一步應該搞清楚如何使你的代碼上面的工作,因爲這是最好的辦法。我一直使用它,它應該工作。我看不到您的代碼有任何問題。你沒有得到Ajax的結果(即'success'和'failure'而不是'complete'),但那是另一回事。嘗試改變'contentType'爲這個'contentType:「text/xml」,並讓我知道。 –
剛剛做了,並且404錯誤仍然存在。任何其他的消化?無論如何感謝 – Silver