2016-02-18 1 views
1

Essayer de faire une demande POST Http sur une fenêtre de l'appareil mobile 6.5HttpWebRequest ne réussit pas Compact Framework

Je peux voir la page Web dans un navigateur sur l'appareil, mais la demande de Http échoue

private string SendData(string directory, string data) 
    { 
     string page = string.Format("http://{0}/{1}", hostname, directory); 

     HttpWebRequest request = (HttpWebRequest)WebRequest.Create(page); 
     request.KeepAlive = false; 
     request.ProtocolVersion = HttpVersion.Version10; 
     request.Method = "POST"; 
     request.ContentType = "text/json"; 

     byte[] postBytes; 

     if (data != null) 
     { 
      postBytes = Encoding.UTF8.GetBytes(data); 
     } 
     else 
     { 
      postBytes = new byte[0]; 
     } 

     request.ContentType = "application/x-www-form-urlencoded"; 
     request.ContentLength = postBytes.Length; 

     /* 
     Stream requestStream = request.GetRequestStream(); 
     requestStream.Write(postBytes, 0, postBytes.Length); 
     requestStream.Close(); 
     */ 
     HttpWebResponse response = null; 
     try 
     { 
      response = (HttpWebResponse)request.GetResponse(); 
      if (response.StatusCode == HttpStatusCode.OK) 
       Console.WriteLine("\r\nResponse Status Code is OK and StatusDescription is: {0}", 
            response.StatusDescription); 
     } 
     catch (WebException e) { 
      Debug.WriteLine("\r\nWebException Raised. The following error occured : "+e.Status); 
     } 

    } 

Je a commenté le POST Stream pour l'instant jusqu'à ce que je peux obtenir une simple demande de travail

Sans le try catch Je reçois "Impossible de se connecter au serveur distant" et se bloque.

Répondre

2

Transforme ce code est bien

Lorsqu'il est branché sur un ordinateur via USB, l'appareil a perdu ses connexions.
Après la fermeture du Windows Mobile Device Center, cela a fonctionné correctement.