Schrift
Wiki:Tipp zum Debugging: use Data::Dumper; local $Data::Dumper::Useqq = 1; print Dumper \@var;
[thread]11183[/thread]

Pendant zu LiveHTTPheaders (Seite 2)



<< |< 1 2 3 4 >| >> 37 Einträge, 4 Seiten
YippyYappo
 2008-01-25 17:17
#105172 #105172
User since
2008-01-24
22 Artikel
BenutzerIn
[default_avatar]
GwenDragon+2008-01-25 16:00:33--
Schau dir doch mal an wie es die Perl-Skripte get, post und head machen, die mit installiert sind?

Es gibt da die Möglichkeit mit den Switches -USsed auch das anzeigen zu lassen ;)

Bin etwas verwirrt, denn zu -USsed finde ich irgendwie gar nichts...?
GwenDragon
 2008-01-25 17:56
#105173 #105173
User since
2005-01-17
14611 Artikel
Admin1
[Homepage]
user image
~GET -h
Usage: GET [-options] <url>...
-m <method> use method for the request (default is 'GET')
-f make request even if GET believes method is illegal
-b <base> Use the specified URL as base
-t <timeout> Set timeout value
-i <time> Set the If-Modified-Since header on the request
-c <conttype> use this content-type for POST, PUT, CHECKIN
-a Use text mode for content I/O
-p <proxyurl> use this as a proxy
-P don't load proxy settings from environment
-H <header> send this HTTP header (you can specify several)

-u Display method and URL before any response
-U Display request headers (implies -u)
-s Display response status code
-S Display response status chain
-e Display response headers
-d Do not display content
-o <format> Process HTML content in various ways

-v Show program version
-h Print this message

-x Extra debugging output
Gast Gast
 2008-01-25 21:21
#105176 #105176
hallo.
also ich weiß jetzt nicht was wireshark ist, aber mich würden diese optionen schon interessieren.
in dem beispiel
my $response = $ua->get( 'http://foo-magazin.de/' );
wo setzte ich denn da die optionen ein?
wenn ich bei mir get mit den von dir genannten optionen ausführen will kommen fehlermeldungen.
YippyYappo
 2008-01-25 22:51
#105177 #105177
User since
2008-01-24
22 Artikel
BenutzerIn
[default_avatar]
RalphFFM+2008-01-25 07:12:57--
Hmm, als Du in Beitrag1 von "eingehenden Header-Informationen" gesprochen hast
dachte ich Du meinst serverseitig. Aus Beitrag3 bekomme ich allerdings den Eindruck,
Du meinst vielleicht doch clientseitig? Vielleicht suchst Du etwas in der Art:
Code (perl): (dl )
1
2
3
4
5
sub holeSeite {
    my ($server,$file) = ( shift =~ m|^(?:http://)?([^/]+)(/[^ ]+)|i ); # URL Deiner Seite uebergeben
    $html = qx( echo -e "GET $file HTTP/1.0\r\nHost: $server\r\n\r\n" | netcat $server 80 );
    return $html;
}

Müßtest damit dann eigentlich die gesamte Antwort inklusive Header bekommen.
Ist halt ein Vorschlag ohne LWP. Und erschlagt mich bitte nicht wegen fehlendem
Errorhandling und Nutzung eines Nicht-Perl-Tools.

Gruß, Ralph

Wäre alles kein Problem, aber bei mir kommt kein Header sondern
"no port[s] to connect to"
Danke
Yippy
RalphFFM
 2008-01-26 00:43
#105178 #105178
User since
2006-11-16
258 Artikel
BenutzerIn
[Homepage] [default_avatar]
Du solltest der kleinen Subroutine die URL Deiner gewünschten Seite
mitteilen. (übergeben)
YippyYappo
 2008-01-26 03:05
#105181 #105181
User since
2008-01-24
22 Artikel
BenutzerIn
[default_avatar]
GwenDragon+2008-01-25 16:56:27--
~GET -h
Usage: GET [-options] <url>...
-m <method> use method for the request (default is 'GET')
-f make request even if GET believes method is illegal
-b <base> Use the specified URL as base
-t <timeout> Set timeout value
-i <time> Set the If-Modified-Since header on the request
-c <conttype> use this content-type for POST, PUT, CHECKIN
-a Use text mode for content I/O
-p <proxyurl> use this as a proxy
-P don't load proxy settings from environment
-H <header> send this HTTP header (you can specify several)

-u Display method and URL before any response
-U Display request headers (implies -u)
-s Display response status code
-S Display response status chain
-e Display response headers
-d Do not display content
-o <format> Process HTML content in various ways

-v Show program version
-h Print this message

-x Extra debugging output

Egal welchen Schalter ich auch setze, die Header-Informationen sind ausgesprochen dürftig und die oben von mir erwähnte Zeile mit dem GET-Verweis taucht hierbei gar nicht erst auf.
ptk
 2008-01-26 10:17
#105182 #105182
User since
2003-11-28
3645 Artikel
ModeratorIn
[default_avatar]
Du bekommst nur die _Response_ ausgegeben! "GET" taucht im _Request_ auf, und es steht dir frei, diesen selbst zu gestalten, indem du alle HTTP-Header mit der Option -H selbst setzt.
YippyYappo
 2008-01-26 20:01
#105204 #105204
User since
2008-01-24
22 Artikel
BenutzerIn
[default_avatar]
Irgendein Hinweis, warum meine Antwort auf das letzte Posting gelöscht wurde?
GwenDragon
 2008-01-26 20:27
#105206 #105206
User since
2005-01-17
14611 Artikel
Admin1
[Homepage]
user image
Ist nichts von den Mods gelöscht worden.
YippyYappo
 2008-01-26 20:47
#105207 #105207
User since
2008-01-24
22 Artikel
BenutzerIn
[default_avatar]
GwenDragon+2008-01-26 19:27:53--
Ist nichts von den Mods gelöscht worden.

Gut, dann versuche ich es noch mal:

ptk+2008-01-26 09:17:12--
Du bekommst nur die _Response_ ausgegeben! "GET" taucht im _Request_ auf, und es steht dir frei, diesen selbst zu gestalten, indem du alle HTTP-Header mit der Option -H selbst setzt.

Soweit ich sehe, werden mit -H nur die Header gesetzt und es geht nicht darum, welcher Header ich empfange.
Ich gehe daher davon aus, daß mein Anliegen noch nicht 100% rübergekommen ist und will es deshalb an einem konkreten Fall deutlich machen, der sich wegen der Menge an zurückgelieferten Headers anbietet.
Mit der Zeile
GET -m HEAD -S http://www.youtube.com/watch?v=l69Vi5IDc0g
erhalte ich folgendes Resultat:

HEAD http://www.youtube.com/watch?v=l69Vi5IDc0g --> 200 OK
Cache-Control: no-cache
Connection: Keep-Alive
Date: Sat, 26 Jan 2008 18:35:51 GMT
Server: Apache
Content-Length: 106441
Content-Type: text/html; charset=utf-8
Client-Date: Sat, 26 Jan 2008 18:38:41 GMT
Client-Peer: 208.65.153.238:80
Client-Response-Num: 1
Keep-Alive: timeout=300
Set-Cookie: use_hitbox=72c46ff6cbcdb7c5585c36411b6b334edAEAAAAw; path=/; domain=.youtube.com
Set-Cookie: VISITOR_INFO1_LIVE=_KR_XlA6EMI; path=/; domain=.youtube.com; expires=Tue, 23-Jan-2018 18:35:51 GMT
Set-Cookie: watched_video_id_list=03abacd85fabb7a25e970f791853cd8bWwEAAABzCwAAAGw2OVZpNUlEYzBn; path=/; domain=.youtube.com
Set-Cookie: GEO=f6f1b3ba509589e7c52415805c2923adcxcAAABVUyxuYyxjaGFybG90dGUsLCwsLDUxNw==; path=/; domain=.youtube.com; expires=Mon, 28-Jan-2008 18:35:51 GMT
Set-Cookie: LOCALE_PREFERENCE=86d1d09eefe6b79b4068000ce05518a4dAUAAABlbl9VUw==; path=/; domain=.youtube.com; expires=Tue, 23-Jan-2018 18:35:51 GMT

Das war's, mehr kommt nicht.

Wenn ich die Seite http://www.youtube.com/watch?v=l69Vi5IDc0g im Firefox
aufrufe, erhalte ich aus LiveHTTPHeaders insgesamt 554 Zeilen, Anfang wie folgt:

GET /watch?v=l69Vi5IDc0g HTTP/1.1
Host: www.youtube.com
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; de; rv:1.8.1.11) Gecko/20071127 Firefox/2.0.0.11
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Accept-Language: de-de,de;q=0.8,en-us;q=0.5,en;q=0.3
Accept-Encoding: gzip,deflate
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
Keep-Alive: 300
Connection: keep-alive

HTTP/1.x 200 OK
Date: Sat, 26 Jan 2008 18:36:27 GMT
Server: Apache
Set-Cookie: use_hitbox=72c46ff6cbcdb7c5585c36411b6b334edAEAAAAw; path=/; domain=.youtube.com
Set-Cookie: VISITOR_INFO1_LIVE=5OcMiUU8twY; path=/; domain=.youtube.com; expires=Tue, 23-Jan-2018 18:36:27 GMT
Set-Cookie: watched_video_id_list=03abacd85fabb7a25e970f791853cd8bWwEAAABzCwAAAGw2OVZpNUlEYzBn; path=/; domain=.youtube.com
Set-Cookie: GEO=5c52e7ec4929afdfa816de7e28842fd7cxMAAABERSxudyxib2NodW0sLCwsLC0x; path=/; domain=.youtube.com; expires=Mon, 28-Jan-2008 18:36:27 GMT
Set-Cookie: LOCALE_PREFERENCE=86d1d09eefe6b79b4068000ce05518a4dAUAAABlbl9VUw==; path=/; domain=.youtube.com; expires=Tue, 23-Jan-2018 18:36:27 GMT
Content-Encoding: gzip
Cache-Control: no-cache
Content-Length: 19389
Keep-Alive: timeout=300
Connection: Keep-Alive
Content-Type: text/html; charset=utf-8
----------------------------------------------------------
http://static.youtube.com/yt/css/base_all-vfl32780...

GET /yt/css/base_all-vfl32780.css HTTP/1.1
Host: static.youtube.com
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; de; rv:1.8.1.11) Gecko/20071127 Firefox/2.0.0.11
Accept: text/css,*/*;q=0.1
Accept-Language: de-de,de;q=0.8,en-us;q=0.5,en;q=0.3
Accept-Encoding: gzip,deflate
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
Keep-Alive: 300
Connection: keep-alive
Referer: http://www.youtube.com/watch?v=l69Vi5IDc0g
Cookie: use_hitbox=72c46ff6cbcdb7c5585c36411b6b334edAEAAAAw; VISITOR_INFO1_LIVE=5OcMiUU8twY; watched_video_id_list=03abacd85fabb7a25e970f791853cd8bWwEAAABzCwAAAGw2OVZpNUlEYzBn; GEO=5c52e7ec4929afdfa816de7e28842fd7cxMAAABERSxudyxib2NodW0sLCwsLC0x; LOCALE_PREFERENCE=86d1d09eefe6b79b4068000ce05518a4dAUAAABlbl9VUw==


----snip---
Bei meinem vorherigen Posting, das irgendwie verschütt' gegangen ist, hatte ich ein Beispiel aus Redtube gewählt, bei dem sogar knapp 1800 Zeilen Header-Informationen reingekommen sind.
Daher nochmal meine Frage:
wie kann ich genau diese Daten mit Perl abfragen?
Ich glaube kaum, daß es nur mit einem Sniffen an der Netzwerk-Karte bewerkstelligt werden kann, drehe mich aber irgendwie im Kreis...
<< |< 1 2 3 4 >| >> 37 Einträge, 4 Seiten



View all threads created 2008-01-24 18:03.