|
Perl/CGI研究室 'PERL-LABO' TOPへ |
戻る(History.Back) |
HTTPヘッダのLocationヘッダで別のページにジャンプするらしいです。テストしてみましょう。
HTTPヘッダというのは、Content-type: text/html っていうあれです。
HTTPヘッダにはいろいろな種類があり、その中にLocationというものがあります。
HTTPヘッダでLocationを指定すると任意のページにジャンプすることができます。
例えば、次のような文字列をCGIで出力したとしましょう。
Location: http://www.yahoo.co.jp/
ブラウザ側ではこれを解釈して、自動的に http://www.yahoo.co.jp/ にジャンプしてくれます。 そういう機能がもともとブラウザ側にはあるんですね。
この機能、なんに使うんだ?という感じでもありますが、結構便利なこともあるようです。 例えば、あるリンクが何回クリックされたかとかいうことを数えたいときに、 一旦CGIプログラムを経由して、クリックされた回数を増やす処理をして、 Locationで本来のページにジャンプするとか。 他にもいろいろ使い道があるみたいですし、 面白そうなので試してみましょう。
print文でLocation:〜というのを出力するだけなので簡単です。 今までいつも出力していたContent-type:〜は必要ありません。 HTTPヘッダの後の空行を出力するのを忘れないようにしましょう。
#!/usr/bin/perl print "Location: http://www.yahoo.co.jp/\n"; print "\n";
次のリンクをクリックしてください。gotoyahoo.cgiが実行されて、Yahoo!Japanが開けば成功です。
gotoyahoo.cgiを実行してYahoo!Japanを開きます!
ちゃんとジャンプできました。
|
Perl/CGI研究室 'PERL-LABO' TOPへ |
戻る(History.Back) |
| Copyright (c) 'PERL-LABO' All Rights Reserved. リンクフリーです。 |