2010-11-08 3 views
0

je dois vous connecter à un webservice de mon application iOS je ne peux cependant pas comprendre comment se connecter à et quelles classes je dois utiliser, etc.Quel type de service Web et comment connecter depuis iOS

Je ne peux pas donner la vraie URL mais c'est ce que je peux dire - quand j'ouvre le suivant dans le navigateur il demande un nom d'utilisateur et un mot de passe. Je pense que ce pourrait être PHP ou Java?

http://IPADDRESS/XmlServlet/Dispatcher?action

J'ai le code que l'on exige, mais son en C#. J'ai besoin dans l'objectif c:

public void SendXML(string xml) 
     { 
      xtvRequest.Xml = xml; 
      string actionName = xml.LastIndexOf(":")<xml.LastIndexOf("</") ? 
       xml.Substring(xml.LastIndexOf("</")+2,xml.Length-3-xml.LastIndexOf("</")) : 
       xml.Substring(xml.LastIndexOf(":")+1,xml.Length-2-xml.LastIndexOf(":")); 
      WebClient client = new WebClient(); 
      client.Headers.Add("Content-Type", "text/xml; charset=UTF-8"); 
      client.Credentials = new NetworkCredential("username", "password"); 
      Stopwatch s = new Stopwatch(); 
      s.Start(); 
      byte[] bret = client.UploadData("http://IPADDRESS/TTXmlServlet/Dispatcher?action=" + actionName, "POST", 
      System.Text.Encoding.UTF8.GetBytes(xml)); 
      s.Stop(); 
      string sret = System.Text.Encoding.ASCII.GetString(bret); 
      xtvResponse.Xml = sret; 
      tabControl1.SelectedIndex = 1; 
     } 

Et voici comment la demande semble:

<?xml version="1.0" encoding="UTF-8"?><n1:SearchEngineRequest xmlns:n1="http://domain.com/searchengine/request" LanguageCode="EN_GB" Timestamp="2010-10-11T16:53:07Z" Target="Test" SessionID=""></n1:SearchEngineRequest> 
+0

Assurez-vous d'utiliser les services REST avec JSON! –

Répondre

1

Vous devez soit utiliser NSURLConnection et mettre en œuvre l'authentification de base afin d'accéder au service Web, mais je suggère que vous utilisez la bibliothèque ASIHTTPRequest pour cela, cela vous facilite la vie. Consultez cette partie: Handling HTTP Authentication

+0

D'accord. C'est le chemin à parcourir. –

+0

Merci ça marche! – TheLearner

Questions connexes