perlによるhttpクライアント鯖
■ このスレッドは過去ログ倉庫に格納されています
0001名無しさん@お腹いっぱい。
01/09/13 11:34ID:C1ttM4R.use Socket; # Socket モジュールを使う
# HTTP プロトコルを使う
$port = getservbyname('http','tcp');
# ホスト名を、IP アドレスの構造体に変換
$iaddr = inet_aton("www.cs.gunma-u.ac.jp")
or die "www.cs.gunma-u.ac.jpは存在しないホストです。\n";
# ポート番号と IP アドレスを構造体に変換
$sock_addr = pack_sockaddr_in($port,$iaddr);
# ソケット生成
socket(SOCKET,PF_INET,SOCK_STREAM,0)
or die "ソケットを生成できません。\n";
# 指定のホストの指定のポートに接続
connect(SOCKET,$sock_addr)
or die "www.cs.gunma-u.ac.jpのポート$portに接続できません。\n";
# ファイルハンドル SOCKET をバッファリングしない
select(SOCKET); $|=1; select(STDOUT);
# WWWサーバにHTTPリクエストを送る
print SOCKET "GET /index.html HTTP/1.0\r\n";
print SOCKET "\r\n";
# ヘッダ部分を受け取る
while (<SOCKET>){
# 改行のみの行ならループを抜ける
m/^\r\n$/ and last;
}
# ボディ部分を受け取り、表示
while (<SOCKET>){
print $_;
}
どこかまちがってる?
■ このスレッドは過去ログ倉庫に格納されています