Hallo,
Ich versuche vergeblich, mich bei dem Browsergame "Seafight" mittels HTTPWebRequest einzuloggen.
Ich bekomme den Fehler 403 (Unzulässig), weiß aber nicht warum.
Der Fehler muss in der Post-Daten Übergabe liegen, denn wenn ich den ermittelten Link in Firefox öffne, dann erhalte ich zwar nicht das gewünschte Ergebnis, aber immerhin keine 403-Meldung.
Mein Code bisher:
Ich hoffe, dass mir hier jemand helfen kann..
Danke im vorraus
bluedra
P.S: Es soll kein Bot werden. Lediglich ein Tool, dass mir in gewissen Abständen Informationen zum Status meines Accounts liefert, damit ich mich nicht jedesmal dafür einloggen muss. Diese Funktion ist aber noch nicht implementiert, da ich bereits beim Einloggen scheitere
Ich versuche vergeblich, mich bei dem Browsergame "Seafight" mittels HTTPWebRequest einzuloggen.
Ich bekomme den Fehler 403 (Unzulässig), weiß aber nicht warum.
Der Fehler muss in der Post-Daten Übergabe liegen, denn wenn ich den ermittelten Link in Firefox öffne, dann erhalte ich zwar nicht das gewünschte Ergebnis, aber immerhin keine 403-Meldung.
Mein Code bisher:
VB.NET-Quellcode
- Imports System.IO
- Imports System.Text
- Imports System.Net
- Module Module1
- Dim cookies As CookieContainer
- Sub Main()
- Try
- Dim background As ConsoleColor = ConsoleColor.Black
- Dim foreground As ConsoleColor = ConsoleColor.Green
- Console.BackgroundColor = background
- Console.ForegroundColor = foreground
- Dim user As String = "xxxx", server As String = "de1", pass As String = "xxxxxxxxx"
- Dim loginToken As String = Request("http://" & server & ".seafight.bigpoint.com").ToString.Replace("cation/Bigpoint?authUser=14&token=", "ä").Split("ä")(1).Replace(""">", "ä").Split("ä")(0)
- Console.WriteLine("Logintoken received: " & loginToken)
- Console.WriteLine("Try now to login...")
- Dim logintry As String = Request("https://auth3.bpsecure.com/Sas/Authentication/Bigpoint?authUser=14&token=" & loginToken, "loginname=" & user & "&password=" & pass, "http://" & server & ".seafight.bigpoint.com").ToString
- Console.WriteLine("Answer:" & vbNewLine & logintry) 'Hier wird der Fehler ausgegeben
- Console.ReadLine()
- Catch ex As Exception
- Console.WriteLine("Error: " & ErrorToString())
- Console.ReadLine()
- End Try
- End Sub
- Public Function Request(ByVal address As String, Optional Post As String = "", Optional ref As String = "")
- Try
- Dim htRequest As HttpWebRequest = CType(WebRequest.Create(address), HttpWebRequest)
- htRequest.CookieContainer = cookies
- htRequest.Method = "POST"
- htRequest.UserAgent = "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:14.0) Gecko/20100101 Firefox/14.0.1"
- htRequest.Accept = "text/htmlapplication/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"
- htRequest.Referer = ref
- Dim byteArray() As Byte = Encoding.UTF8.GetBytes(Post)
- htRequest.ContentLength = byteArray.Length
- Dim DataStream As Stream = htRequest.GetRequestStream()
- DataStream.Write(byteArray, 0, byteArray.Length)
- DataStream.Close()
- Dim Response As HttpWebResponse = htRequest.GetResponse() 'Hier entsteht er (WebException)
- DataStream = Response.GetResponseStream()
- Dim reader As New StreamReader(DataStream)
- Dim ServerResponse As String = reader.ReadToEnd()
- reader.Close()
- DataStream.Close()
- Response.Close()
- Return ServerResponse
- Catch ex As Exception
- Return ex
- End Try
- End Function
- End Module
Ich hoffe, dass mir hier jemand helfen kann..
Danke im vorraus
bluedra
P.S: Es soll kein Bot werden. Lediglich ein Tool, dass mir in gewissen Abständen Informationen zum Status meines Accounts liefert, damit ich mich nicht jedesmal dafür einloggen muss. Diese Funktion ist aber noch nicht implementiert, da ich bereits beim Einloggen scheitere