2014-04-11 10 views
5

Ho questo codice in cui sto provando a connettermi a un server API di base php per un'applicazione windows8. Comunque non ho alcun risultato sapendo che se provo a eseguirne il debug l'url è corretto e le variabili sono impostate. Sono nuovo in Windows8 app e C#, e dopo diverse ricerche questo è ciò che si collega a un server API sembrava Qualsiasi aiuto per favorecome connettere un'app windows8 C# con php api


private void Button_Click(object sender, RoutedEventArgs e) 
     { 

      var username="lucy"; 
      var password="lucy"; 

      var request = HttpWebRequest.Create("http://myURL/login.php?username="+username+"&password="+password) as HttpWebRequest; 
      request.Method = "POST"; 
      request.ContentType = "text/json"; 
      request.BeginGetRequestStream(new AsyncCallback(GetRequestStreamCallback), request); 
     } 
private void GetRequestStreamCallback(IAsyncResult asynchronousResult) 
    { 
     HttpWebRequest request = (HttpWebRequest)asynchronousResult.AsyncState; 
     // End the stream request operation 

     Stream postStream = request.EndGetRequestStream(asynchronousResult); 


     // Create the post data 
     string postData = JsonConvert.SerializeObject(postStream).ToString(); 
     MessageDialog msgDialog1 = new MessageDialog(postData, "bayyanit"); 
     msgDialog1.ShowAsync(); 

     Debug.WriteLine(postData); 
     byte[] byteArray = Encoding.UTF8.GetBytes(postData); 


     postStream.Write(byteArray, 0, byteArray.Length); 
     // postStream.Close(); 

     //Start the web request 
     try 
     { 
      request.BeginGetResponse(new AsyncCallback(GetResponceStreamCallback), request); 
     } 
    catch(Exception ex) 
     { 
      MessageDialog msgDialog = new MessageDialog(ex.ToString(), "bayyanit"); 
      msgDialog.ShowAsync(); 
     } 
    } 

    void GetResponceStreamCallback(IAsyncResult callbackResult) 
    { 
     HttpWebRequest request = (HttpWebRequest)callbackResult.AsyncState; 
     HttpWebResponse response = (HttpWebResponse)request.EndGetResponse(callbackResult); 
     using (StreamReader httpWebStreamReader = new StreamReader(response.GetResponseStream())) 
     { 
      string result = httpWebStreamReader.ReadToEnd(); 
      MessageDialog msgDialog = new MessageDialog(result, "bayyanit"); 
      msgDialog.ShowAsync(); 
     } 

    } 
+0

Le API sono indipendenti dalla lingua. Mentre chiami un'API, leggi la risposta in json o xml o in qualsiasi altro formato indipendentemente dalla lingua utilizzata per codificarlo. – Guns

+1

@Guns Sono nuovo nelle app di windows8, guardando attraverso il mio codice mi aspetto una risposta in formato json dal server. Cosa mi manca? –

+0

in primo luogo, hai verificato se la tua API sta rispondendo bene nel formato designato? – Guns

risposta

0

si può costruire l'API con PHP in un unico pagina che riceve informazioni tramite GET o POST e restituisce oggetti JSON o XML (vedi php.net per le funzioni che desideri), qualunque sia la tua preferenza.

dopodiché sei pronto per utilizzarlo con la tua applicazione tramite una semplice richiesta HTTP.

+0

ho provato questo, ma ho bisogno di qualcosa di più specifico riguardante la mia situazione –