Gå til innhold

HTTP Post og Windows Mobile


Anbefalte innlegg

Er det noen som kan forklare meg hvorfor dette fungerer på en PC men ikke en Pocket PC?

 

    Private Function RunAPI(ByVal api_url As String) As String
       'Hvordan utføre en POST:
       'http://www.west-wind.com/presentations/dotnetWebRequest/dotnetWebRequest.htm

       Dim req As System.Net.HttpWebRequest
       Dim url As String = api_url
       Dim strPost As String = ""

       If Strings.InStr(api_url, ("?")) > 0 Then
           url = Strings.Split(api_url, "?")(0)
           strPost = Strings.Split(api_url, "?")(1)
       End If
       req = System.Net.HttpWebRequest.Create(url)
       If strPost.Length > 0 Then
           req.Method = "POST"
       Else
           req.Method = "GET"
       End If
       req.ContentType = "application/x-www-form-urlencoded" '//"multipart/form-data"
       req.Credentials = System.Net.CredentialCache.DefaultCredentials
       'req.ProtocolVersion = Net.HttpVersion.Version10

       Debug.WriteLine("Aktiv URL: " & url)
       Debug.WriteLine("Parametre: " & strPost)

       'Skriver til serveren
       If strPost.Length > 0 Then
           Debug.WriteLine("Skriver data til serveren: " & ReplaceÆØÅ(strPost))
           Dim postBytes() As Byte = System.Text.Encoding.UTF7.GetBytes(ReplaceÆØÅ(strPost))
           req.ContentLength = postBytes.Length
           Dim postStream As IO.Stream = req.GetRequestStream
           postStream.Write(postBytes, 0, postBytes.Length)
           postStream.Close()
       End If

       'Leser svaret fra serveren
       Dim output As String = Nothing
       Try
           Debug.WriteLine("Request has response: " & req.HaveResponse)
           Dim response As System.Net.HttpWebResponse = req.GetResponse
           Dim responsestream As IO.StreamReader = New IO.StreamReader(response.GetResponseStream, System.Text.Encoding.UTF7)
           output = responsestream.ReadToEnd
           response.Close()
           responsestream.Close()
       Catch ex As Net.WebException
           Debug.WriteLine("Error status: " & ex.Status.ToString) ' & " - " & ex.StackTrace)
           'If ex.Status.ToString = "ProtocolError" Then
           Debug.WriteLine("Status Code: " & CType(ex.Response, Net.HttpWebResponse).StatusCode)
           Debug.WriteLine("Status Description: " & CType(ex.Response, Net.HttpWebResponse).StatusDescription)
           'End If
       End Try

       Debug.WriteLine("Output: " & output)
       Return output

   End Function

Lenke til kommentar
Videoannonse
Annonse

Endelig ordnet det seg! Forbanna helv.... :thumbdown:

 

 

Uansett, dette får jeg i immediate vinduet:

Aktiv URL: http://www.hepp.no/api/ValidateUser.aspx

Parametre: user=90949197&password=passordja&userid=0

Skriver data til serveren: user=90949197&password=passordja&userid=0

A first chance exception of type 'System.UriFormatException' occurred in System.dll

Request has response: False

Output: 0

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...