Schrift
[thread]8265[/thread]

Net:SSLeay & Cookies: Probleme oder unwissenheit



<< >> 8 Einträge, 1 Seite
Oliver_M
 2006-08-24 16:34
#69186 #69186
User since
2005-11-23
19 Artikel
BenutzerIn
[default_avatar]
Hallo zusammen,
ich hoffe das ich mit diesem Thema im richtigen Forum gelandet bin. Ich habe noch nicht alluzviel erfahrung mit Perl, allerdings muss ich jetzt ein Skript schreiben welches sich auf einer Website einloggt und dann die Daten auswertet.
Da die Website unter https läuft, habe ich Net::SSleay installiert.
Die Loginseite kann ich ohne Probleme auch damit aufrufen.

Meine Fragen währen nun:

1. Wie kann ich denn Cookie speichern, bzw. wo wird dieser dann gespeichert.

2. Wie kann ich das Cookie dann wieder in dem Skript weiterverwanden, sprich an die Website schicken.

Im Vorraus schonmals vielen Dank

Viele Grüße
Olli
renee
 2006-08-24 16:54
#69187 #69187
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
Du musst ein Cookie-Jar erzeugen. So geht es z.B. mit CPAN:WWW::Mechanize
Code: (dl )
1
2
3
4
    $cookie_jar = HTTP::Cookies->new();
$mechanizer = WWW::Mechanize->new(cookie_jar => $cookie_jar);

# Anfrage starten
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
Oliver_M
 2006-08-25 10:01
#69188 #69188
User since
2005-11-23
19 Artikel
BenutzerIn
[default_avatar]
Hi,
schonmal danke für die Antwort.
leider wird mir da nicht ganz klar, wie damit das Cookie zuerst gespeichert wird, und bei einem weiteren aufruf mit Net::SSLeay wieder benutzt werden kann...

Wie gesagt, bin noch blutiger perl-anfänger ;-)
renee
 2006-08-25 11:11
#69189 #69189
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
Das wird irgendwie intern geregelt...
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
Oliver_M
 2006-08-25 11:33
#69190 #69190
User since
2005-11-23
19 Artikel
BenutzerIn
[default_avatar]
Hi,
ok hab das ganze jetzt mal getestet, allerdings scheint es nicht zu funktionieren :-(

Hier ein Ausschnitt wo das Loginformular ausgefüllt wird:

Code: (dl )
1
2
3
4
5
6
7
$cookie_jar = HTTP::Cookies->new();
$mechanizer = WWW::Mechanize->new(cookie_jar => $cookie_jar);
(@page, $response, %reply_headers)
= post_https(xxx.xxx.xxx.xxx, 443, "$formAction", '',
make_form(username => 'Kennung',
passwort => 'Passwort'
));


Im nächsten Schritt wird dann die Seite aufgerufen welche das Cookie benötigt:

Code: (dl )
@page = get_https("xxx.xxx.xxx.xxx", 443,"$urlargs");


aber so wie es aussieht ist das cookie nicht gesetzt...
renee
 2006-08-25 12:04
#69191 #69191
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
Benutzt Du das CPAN:WWW::Mechanize-Objekt für alle Requests?
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
Oliver_M
 2006-08-25 12:10
#69192 #69192
User since
2005-11-23
19 Artikel
BenutzerIn
[default_avatar]
ich denke nicht. Die Requests um die es geht, sind die beiden wo ich in dem Code-Rahmen geschrieben habe. Wie kann ich das Objekt in die Requests einbauen?
Währe es möglich ein kurzes Beispiel anzugeben, daraus könnte ich dann den Rest ableiten :-)

Danke schön :-)\n\n

<!--EDIT|Oliver_M|1156497028-->
renee
 2006-08-25 18:15
#69193 #69193
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
In dem geposteten Code sieht man nicht wirklich einen Request sondern nur Methodenaufrufe. Und ich weiß nicht, was die Methoden machen.

Du hast da eh noch ein anderes Problem. Alle Rückgabewerte landen in dem Array. Vergleiche:
Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#!/usr/bin/perl

use strict;
use warnings;

my (@array,$skalar) = methode();

print ">>@array<<\n>>$skalar<<\n";

sub methode{
my @tmp = qw(1 2 3);
my $test = 4;
return @tmp,$test;
}


Ausgabe:
Code: (dl )
1
2
3
4
C:\community>array.pl
Use of uninitialized value in concatenation (.) or string at C:\community\array.pl line 8.
>>1 2 3 4<<
>><<
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
<< >> 8 Einträge, 1 Seite



View all threads created 2006-08-24 16:34.