Seite 1 von 1

Login über java Applikation

Verfasst: 09.06.2005 02:24
von AntonioPerversi
Hi!

Ich habe ne java-Applikation geschrieben, die xml-Dateien von von meinem Server zieht und auswertet. Diese liegen aber in dem passwortgeschützten Bereich. Weiß jemand, wie ich mich mit meiner Applikation in mein Board einloggen kann, damit ich dann auch den Zugriff auf die xml-Dateien bekomme? N Code beispiel wäre nicht schlecht. Bei nem "normal" durch .htaccess geschützen Bereich weiß ich wies geht. Aber der Boardlogin macht mir zu schaffen :roll:

Danke schonma vorab!

MfG A.P.

Verfasst: 11.06.2005 15:08
von AntonioPerversi
Hat keiner ne Idee? Es müsste doch irgendwie möglich sein per POST. Ich steh wirklich aufm Schlauch :roll:

A.P.

Verfasst: 11.06.2005 15:37
von Jack9027
login.php?username=bla&password=bla weiß nicht ob phpbb erlaubt, dass man des mit get machen darf, wenn nicht halt einfach mit post machen

Verfasst: 11.06.2005 16:13
von AntonioPerversi
Danke schonmal für deine Antwort!
Mit GET hatte ichs schon probiert. Da funzt es nich. Hättest Du vielleicht ma nen Beispiel Code für die Variante mit POST?

Danke! A.P.

Verfasst: 11.06.2005 22:11
von Pyramide
So funktionierts bei mir:

Code: Alles auswählen

        URL login = new URL("http://phpbbde.localhost/login.php");
        
        //Verbinden
        HttpURLConnection con = (HttpURLConnection)login.openConnection();
        con.setDoOutput(true); //wir wollen POST-Daten schreiben
        con.setInstanceFollowRedirects(false); //nicht automatisch der weiterleitung auf index.php folgen
        
        //POST-Daten schreiben
        Writer postData = new OutputStreamWriter(con.getOutputStream());
        postData.write("username=test_user&password=test&login=submit");
        postData.close();
        
        //Weiterleitungs-URL holen
        String redirect = con.getHeaderField("Location");
        if(redirect == null) throw new IOException("Server sendet keine Weiterleitung - ungültige Benutzerdaten?");
        
        //Position der Session-ID in der URL finden
        int sidPos = redirect.indexOf("sid=");
        if(sidPos == -1) throw new IOException("keine Session-ID in Weiterleitungs-URL gefunden");
        
        //Session-ID auslesen
        String sid = redirect.substring(sidPos + 4); //das sid= selbst brauchen wir nicht
        System.out.println(sid);
        
        URL geheim = new URL("http://phpbbde.localhost/muss_eingelogt_sein.php?sid=" + sid);
        //geheim.openStream()

Verfasst: 13.06.2005 02:29
von AntonioPerversi
Hey, Das funzt! Vielen Dank! Das hat mir wirklich geholfen :)

Verfasst: 19.12.2005 18:27
von King Crusty
das ist klasse, wie könnte sowas mit php aussehen? Funktioniert das überhaupt ohne großen Aufwand?

edit: bin nun schon auf cURL gestoßen, nur die Session macht mir da noch Probleme?!