2011-09-25 8 views
6

Jak wykonać wywołanie usługi sieciowej z mojej aplikacji phonegap? Znalazłem dwie biblioteki javascript po jednej z IBM i inną IvanWebService http://wiki.phonegap.com/w/page/43725416/SOAP%20Web%20Service, które umożliwiają wykonywanie takich połączeń, ale nie mogłem ich uruchomić, aby uruchomić którekolwiek z moich usług internetowych. Przekazuję link wsdl jako łącze serwisowe i zaktualizowałem parametry koperty, wciąż nic.Jak mogę połączyć się z usługą internetową za pomocą phonegap dla Androida

+1

zobaczyć ten link http://kmithi.blogspot.in/2012/02/callling-web- services-in.html – mithilesh

Odpowiedz

5
+0

co, jeśli miałbym zamiar używać sencha zamiast jquery lub żadnej z tych dwóch bibliotek, czy jest jakiś sposób na nawiązanie połączenia właśnie z prostego javascript na phonegap? – abs

+0

Niektóre szybkie Googling sprawia, że ​​wydaje się, że Sencha nie ma żadnego konkretnego wsparcia dla SOAP. Prawdopodobnie będziesz mógł wykonać wywołanie Ajax do usługi, ale będziesz musiał ręcznie skonstruować i zdekonstruować koperty SOAP. –

+0

Tak, prawdopodobnie mógłbyś to zrobić bez biblioteki JavaScript, ale nie byłby to "prosty" Javascript. Byłaby to masa brzydkich wywołań sieciowych, wyrażeń regularnych służących do analizowania XML oraz łączenia ciągów w celu tworzenia obwiedni SOAP. Prawdopodobnie nie byłaby ładna i jeśli nie jesteś naprawdę dobra w regex, prawdopodobnie byłaby też podatna na błędy. To jest piękno jQuery. Dzięki temu JavaScript jest bardziej przejrzysty i bardziej elegancki. Nawet jeśli nie korzystałeś z jQuery, prawdopodobnie skończyłbyś szukać innych bibliotek, które robią to samo. –

1
<head> 

    <link rel="stylesheet" href="http://code.jquery.com/mobile/1.0a2/jquery.mobile-1.0a2.min.css" /> 
<script src="http://code.jquery.com/jquery-1.4.4.min.js"></script> 
<script src="http://code.jquery.com/mobile/1.0a2/jquery.mobile-1.0a2.min.js"></script> 

<script type="text/javascript"> 
     $(function() { 

      $("#requestXML").click(function() { 

        $.ajax({ 
         type: "POST", 
         url: "http://YOURSITE/script.php", 
         data: "{}", 
         cache: false, 
         dataType: "xml", 
         success: onSuccess 
        }); 

      }); 

      $("#resultLog").ajaxError(function(event, request, settings, exception) { 
       $("#resultLog").html("Error Calling: " + settings.url + "<br />HTTP Code: " + request.status); 
      }); 

      function onSuccess(data) 
       { alert(data); 
       } 


     }); 

     </script> 

</head> 

przycisk, aby wywołać powyższą metodę:

<input id="requestXML" type="button" value="Request XML" />