K
kn1g
Gast
Hi hab versucht mich auf einer Seite einzuloggen. Funktioniert alles. Bekomm aber nen 303 (für alle die nich wissen was ich meine HTTP Error 303 See other Explained) als Status.
Versuche mich gerade Testweise auf meinem Joomla TestBackend einzuloggen.
Glaub ich mach grundsätzlich was falsch...
Gekürzter und kommentierter Code.
Der Code gibt keine Fehlermeldung. Ich bekomme nur den HTML ERROR CODE... Ich glaube ich habe was grundsätzliches nicht verstanden oder falsch gemacht.
Wär cool wenn wer was wüsste...
Versuche mich gerade Testweise auf meinem Joomla TestBackend einzuloggen.
Glaub ich mach grundsätzlich was falsch...
Gekürzter und kommentierter Code.
Java:
_login(GetSomethingFromUrl("value=\"1\"","http://nmkfs.de/joomla_test/administrator/index.php"));
//GetSomethingFromUrl liest eine seite aus und extrahiert aus der Loginform den jeweiligen Token... Die funktion Funktioniert einwandfrei...
public static void _login(String token){
// Erzeuge einen HTTPClient
HttpClient client = new HttpClient();
// Post Methode erzeugen
PostMethod method = new PostMethod("http://nmkfs.de/joomla_test/administrator/index.php");
method.setRequestHeader("User-Agent","Mozilla/4.0 (compatible; MSIE 6.0; Windows 2000)");
method.getParams().setCookiePolicy(CookiePolicy.BROWSER_COMPATIBILITY);
// Request Parameter werden hinzugefügt
method.addParameter("username", "xxxxx"); //inputfeld <input type="text" size="15" class="inputbox" id="modlgn_username" name="username">
method.addParameter("passwd", "xxxxx"); //inputfeld <input type="text" size="15" class="inputbox" id="modlgn_username" name="username">
method.addParameter("option", "com_login"); //inputfeld <input type="text" size="15" class="inputbox" id="modlgn_username" name="username">
method.addParameter("task", "login"); //inputfeld <input type="text" size="15" class="inputbox" id="modlgn_username" name="username">
method.addParameter(token, "1"); //inputfeld <input type="text" size="15" class="inputbox" id="modlgn_username" name="username">
int statusCode = 0;
StringBuffer inputString = null;
try {
// Ausführen des Requests , Seite wird angefordert
// zurückgegeben wird ein statusCode der dir sagt ob der Request / Response erfolgreich war
statusCode = client.executeMethod(method);
System.out.println(statusCode);
... // ERROR wird gecatched
// Falls Request/Response erfolgreich lese den Response aus und schreibe diesen Zeile für Zeile in einen Stringbuffer
if (statusCode != -1) {
try {
String line;
BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(method.getResponseBodyAsStream()));
inputString = new StringBuffer();
while ((line = bufferedReader.readLine()) != null) {
inputString.append(line + "\n");
}
}
... // ERROR wird gecatched und Verbindung geschlossen
}
}
Der Code gibt keine Fehlermeldung. Ich bekomme nur den HTML ERROR CODE... Ich glaube ich habe was grundsätzliches nicht verstanden oder falsch gemacht.
Wär cool wenn wer was wüsste...