Andreas_0815
Mitglied
Hallo Zusammen,
meine Situation: Daimler bietet im Internet frei zugänglich eine Suche für ihre Sonderwerkzeuge an. Jeder Daimler-Sonderwerkzeug-Typ hat eine eindeutige Typennummer. Mit dieser Nummer kann man auf der Website nach dem gewünschten Werkzeug suchen und erhält dann weitere Infos zum Werkzeug (z.B. Bezeichnung, ein Bild...).
In meinem Java-Programm kann man die Werkzeugnummer auch eingeben. Dann soll automatisch von meinem Programm die Suche auf dieser Website aufgerufen werden. Jedoch soll gleich das Ergebnis der Suche angezeigt werden (der Benutzer soll ja die Werkzeugnummer (12-stellig) nicht zweimal eingeben müssen).
mein Problem: Diese Website ist mit einer SessionID versehen (die Website ist ein PHP-Script). Wie ich die Werkzeugnummer und die SessionID an die Website übermittle weiß ich (Ich bin mit dem Browser auf die Website und habe dann die SessionID die in ein Cookie geschrieben wurde in meinem Programm mit POST mitversandt. Das funktioniert dann problemlos).
Ich weiß auch wie ich grundsätzlich an die SessionID ran komme. Die wird mir ja im Header mitgeschickt. Also habe ich den Header geladen und die SessionID rausgezogen:
Jedoch bringt mir die SessionID nur bedingt etwas, denn die ist nicht gültig.
Ich habe auch im Firefox die Cookie-Einstellungen mal auf "jedes Mal nachfragen" gestellt und das vorhandene Cookie gelöscht. Anschließend habe ich die Website, die die Suche anzeigt (http://specialtoolbase.aftersales.daimlerchrysler.com/mpc/toolsframe2.php) neu geladen. Firefox hat mich dann gefragt, ob ich das SessionID-Cookie annehmen will. Wenn ich es annehme kommt aber trotzdem die Fehlermeldung: "Session abgelaufen".
In der Cookie-Auflistung finde ich aber das neue Cookie. Wenn ich diese Website dann nochmal neu lade, erhalte ich kein neues Cookie, sondern es wird sofort die Meldung mit "Session abgelaufen" angezeigt. (mit neu laden meine ich schon den "reload"-Button)
ABER: Ich kann im Browser dafür sorgen, dass die SessionID, die ich jetzt habe, gültig gemacht wird: Durch den Aufruf der Indexseite (http://specialtoolbase.aftersales.daimlerchrysler.com/index.php), die mich beim Betreten der Website zur Suchen-Seite bringt, wird die im Cookie gespeicherte SessionID nicht verändert, aber es wird anschließend die Suchen-Seite mit der schon weiter oben genannten URL (.../toolsframe2.php) angezeigt. Diesmal erhalte ich keine "Session abgelaufen"-Meldung. Und auch bei einem reload der Seite wird wieder die Suchen-Seite korrekt angezeigt.
(Ich hoffe das ganze ist einigermaßen verständlich!! Ansonsten fragt bitte nach, damit ich es euch noch anders und hoffentlich besser schildern kann)
Meine Lösungsversuche:
Da ich es ja schaffe mit meiner Java-App an die SessionID zu kommen ist mein momentanes Problem, dass ich diese SessionID wohl "aktivieren" muss. Also habe ich die Session ID mittels Java mit POST und auch mal mit GET an die ...index.php Seite gesendet. Leider ohne Erfolg. Ich bekomme immer diese Seite angezeigt: http://specialtoolbase.aftersales.daimlerchrysler.com/fehlerindex.html
Es ist aber nirgends ein Passwort oder Benutzername von Nöten. Im Browser erhalte ich diese Seite, wenn ich das Cookie lösche, auf die ...index.php Seite gehe und das Cookie nicht akzeptiere.
Ich probier an der ganzen Sache schon einige Zeit herum... ich hoffe ihr könnt mir helfen.
Leider habe ich von der Vergabe einer SessionID auch keine Ahnung... und weiß deshalb auch nicht, ob diese "Aktivierung" der SessionID ein normales Vorgehen ist.
Ich danke euch schon mal für jede Hilfe!
MfG
Andreas
meine Situation: Daimler bietet im Internet frei zugänglich eine Suche für ihre Sonderwerkzeuge an. Jeder Daimler-Sonderwerkzeug-Typ hat eine eindeutige Typennummer. Mit dieser Nummer kann man auf der Website nach dem gewünschten Werkzeug suchen und erhält dann weitere Infos zum Werkzeug (z.B. Bezeichnung, ein Bild...).
In meinem Java-Programm kann man die Werkzeugnummer auch eingeben. Dann soll automatisch von meinem Programm die Suche auf dieser Website aufgerufen werden. Jedoch soll gleich das Ergebnis der Suche angezeigt werden (der Benutzer soll ja die Werkzeugnummer (12-stellig) nicht zweimal eingeben müssen).
mein Problem: Diese Website ist mit einer SessionID versehen (die Website ist ein PHP-Script). Wie ich die Werkzeugnummer und die SessionID an die Website übermittle weiß ich (Ich bin mit dem Browser auf die Website und habe dann die SessionID die in ein Cookie geschrieben wurde in meinem Programm mit POST mitversandt. Das funktioniert dann problemlos).
Ich weiß auch wie ich grundsätzlich an die SessionID ran komme. Die wird mir ja im Header mitgeschickt. Also habe ich den Header geladen und die SessionID rausgezogen:
Code:
HttpURLConnection indexCon = (HttpURLConnection)(indexUrl).openConnection();
String sessionID = con.getHeaderField(4);
Ich habe auch im Firefox die Cookie-Einstellungen mal auf "jedes Mal nachfragen" gestellt und das vorhandene Cookie gelöscht. Anschließend habe ich die Website, die die Suche anzeigt (http://specialtoolbase.aftersales.daimlerchrysler.com/mpc/toolsframe2.php) neu geladen. Firefox hat mich dann gefragt, ob ich das SessionID-Cookie annehmen will. Wenn ich es annehme kommt aber trotzdem die Fehlermeldung: "Session abgelaufen".
In der Cookie-Auflistung finde ich aber das neue Cookie. Wenn ich diese Website dann nochmal neu lade, erhalte ich kein neues Cookie, sondern es wird sofort die Meldung mit "Session abgelaufen" angezeigt. (mit neu laden meine ich schon den "reload"-Button)
ABER: Ich kann im Browser dafür sorgen, dass die SessionID, die ich jetzt habe, gültig gemacht wird: Durch den Aufruf der Indexseite (http://specialtoolbase.aftersales.daimlerchrysler.com/index.php), die mich beim Betreten der Website zur Suchen-Seite bringt, wird die im Cookie gespeicherte SessionID nicht verändert, aber es wird anschließend die Suchen-Seite mit der schon weiter oben genannten URL (.../toolsframe2.php) angezeigt. Diesmal erhalte ich keine "Session abgelaufen"-Meldung. Und auch bei einem reload der Seite wird wieder die Suchen-Seite korrekt angezeigt.
(Ich hoffe das ganze ist einigermaßen verständlich!! Ansonsten fragt bitte nach, damit ich es euch noch anders und hoffentlich besser schildern kann)
Meine Lösungsversuche:
Da ich es ja schaffe mit meiner Java-App an die SessionID zu kommen ist mein momentanes Problem, dass ich diese SessionID wohl "aktivieren" muss. Also habe ich die Session ID mittels Java mit POST und auch mal mit GET an die ...index.php Seite gesendet. Leider ohne Erfolg. Ich bekomme immer diese Seite angezeigt: http://specialtoolbase.aftersales.daimlerchrysler.com/fehlerindex.html
Es ist aber nirgends ein Passwort oder Benutzername von Nöten. Im Browser erhalte ich diese Seite, wenn ich das Cookie lösche, auf die ...index.php Seite gehe und das Cookie nicht akzeptiere.
Ich probier an der ganzen Sache schon einige Zeit herum... ich hoffe ihr könnt mir helfen.
Leider habe ich von der Vergabe einer SessionID auch keine Ahnung... und weiß deshalb auch nicht, ob diese "Aktivierung" der SessionID ein normales Vorgehen ist.
Ich danke euch schon mal für jede Hilfe!
MfG
Andreas