Hi,
ich möchte mich mit WebRequest an meine Fritz!Box 3272 anmelden.
@petaod hat mir dankenswerterweise einen Link zukommen lassen, wo genau das versucht wird. Allerdings stammt der Link aus dem Jahr 2010, da mach ich mal lieber einen frischen Thread auf.
Hier ist das leicht modifizierte Coding:
Leider klappt das nicht ... ich bekomme eine Exception in der Anweisung
Web Exception wurde nicht behandelt: The remote server returned an error: (404) Not Found.
Die Anweisung produziert eine lange List von Fehlermeldungen, die wohl einen Trace der Ereignisse dokumentieren. Das sagt mir aber leider auch nach eingehender "Lektüre" nicht viel.
Ich habe versucht die Aufrufparameter zu überprüfen. Ich hab dazu
Damit hab ich den
Das dürfte zwar nicht falsch gewesen sein. Aber leider hilft es nicht, die Exception bleibt bestehen.
Ich könnte mir vorstellen, dass der
TamperData zeigt meinen Aufruf nicht an ... vermutlich kommt es also noch zu gar keinem WebRequest ...
Na, vielleicht ist jemand so freundlich, mir ein bissl auf die Sprünge zu helfen.
LG
Peter
ich möchte mich mit WebRequest an meine Fritz!Box 3272 anmelden.
@petaod hat mir dankenswerterweise einen Link zukommen lassen, wo genau das versucht wird. Allerdings stammt der Link aus dem Jahr 2010, da mach ich mal lieber einen frischen Thread auf.
Hier ist das leicht modifizierte Coding:
VB.NET-Quellcode
- Private myContainer As CookieContainer = New CookieContainer
- Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click
- Dim myLoginResponse As String = FritzBoxLogin(myPassword) 'Logon Fritz!Box and get response
- End Sub
- Private Function FritzBoxLogin(ByVal Passwort As String) As String
- Debug.Print(vbNewLine & "Test started -------------------------------------------------------------")
- 'Define Login Request
- Dim Login As HttpWebRequest = CType(HttpWebRequest.Create("http://fritz.box/cgi-bin/webcm"), HttpWebRequest)
- Login.Method = "POST"
- 'Login.UserAgent = "Mozilla/5.0 (Windows; U; Windows NT 6.1; de; rv:1.9.2.13) Gecko/20101203 Firefox/3.6.13"
- Login.UserAgent = "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:43.0) Gecko/20100101 Firefox/43.0"
- Login.CookieContainer = myContainer
- Login.AllowAutoRedirect = True
- Login.ContentType = "application/x-www-form-urlencoded"
- Dim Post As String = "getpage=../html/de/menus/menu2.html&errorpage=../html/index.html&var:lang=de&var:pagename=home&var:menu=home&=&login:command/password=" & Passwort
- Debug.Print("Post: " & Post)
- Login.ContentLength = Post.Length
- 'Perform login
- Dim Wr As New StreamWriter(Login.GetRequestStream(), System.Text.Encoding.Default)
- Wr.Write(Post) : Wr.Close()
- 'Get response
- Dim Re As New StreamReader(Login.GetResponse.GetResponseStream())
- Dim Response As String = Re.ReadToEnd : Re.Close()
- Return Response
- End Function
Leider klappt das nicht ... ich bekomme eine Exception in der Anweisung
Web Exception wurde nicht behandelt: The remote server returned an error: (404) Not Found.
Die Anweisung produziert eine lange List von Fehlermeldungen, die wohl einen Trace der Ereignisse dokumentieren. Das sagt mir aber leider auch nach eingehender "Lektüre" nicht viel.
Ich habe versucht die Aufrufparameter zu überprüfen. Ich hab dazu
TamperData
in meinem Firefox installiert und mal den Login über die fritz.box URL "getampert"Damit hab ich den
Login.UserAgent
aktualisiert. Das dürfte zwar nicht falsch gewesen sein. Aber leider hilft es nicht, die Exception bleibt bestehen.
Ich könnte mir vorstellen, dass der
Post
String nicht richtig gesetzt ist. Aber das ist halt nur eine Vermutung ... und was da drin stehen muss, da hab ich keine Ahnung. TamperData zeigt meinen Aufruf nicht an ... vermutlich kommt es also noch zu gar keinem WebRequest ...
Na, vielleicht ist jemand so freundlich, mir ein bissl auf die Sprünge zu helfen.
LG
Peter
Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Peter329“ ()