アプリ版:「スタンプのみでお礼する」機能のリリースについて

perlにアクセスしたときにクッキーに保存するのはわかるのですが、
htmlにアクセスしたときにperlでクッキーを保存するようにしたいのですが、
どのようにしたらいいのでしょうか?

A 回答 (2件)

>perlにアクセスしたときにクッキーに保存するのはわかるのですが、


 う~ん。分かってない。
Cookieは、HTTPサーバーにファイルを要求するときのヘッダ(HTTP要求ヘッダ)に加えて送信され、HTTPサーバーからの応答ヘッダに加えて送信されるもので、「Cookieに保存される」のではなく、Set-Cookieとして送信されたデータをブラウザがデータとして保存しているものです。
 たとえば、このページにアクセスすると
GET /qa4877985.html HTTP/1.1
Host: oshiete1.goo.ne.jp
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; ja; rv:1.9.0.8) Gecko/2009032609 Firefox/3.0.8
・・・【中略】・・・
Referer: http://oshiete1.goo.ne.jp/mypage_interest.php3?s …
Cookie: __utma=3447・・・【中略】・・・;
のように送信され

HTTP/1.x 200 OK
Date: Tue, 14 Apr 2009 02:09:18 GMT
Server: Apache
Set-Cookie: c_sid=・・・【中略】・・・

のようにかえって来るものです。

 したがって、
>htmlにアクセスしたときにperlでクッキーを保存するようにしたいのですが、
 ではなくて、HTTPサーバーから、そのファイルのmimeがなんであれ(HTMLであろうがGIFであろうがJPPEGであろうが無関係)、応答ヘッダにSet-Cookieコマンドを含めればよいだけです。
 このosieteのページにアクセスすると、HTMLを返す時の応答ヘッダに書き加えるということです。

 ですので質問は、
>サーバーから(HTML)ファイルを提供するときに、Set-Cookieコマンドを含める方法は?
 ということですから、
>perlにアクセスしたときにクッキーに保存するのはわかるのですが、
 と同じ方法でよいということです。perlではなくて、
「Perlで書かれたCGIがファイルを提供するとき」と同じ方法で、
    • good
    • 0

Cookie 書き込みの基本的な方法はふたつです。



1 レスポンスヘッダに Set-Cookie: を含める。
これは、普通はCGIで行います。
# 他の方法が知りたいと言うご質問なんですね?

2 JavaScript で document.cookie を設定する。
# この方法で良いでしょうか?

参考URL:http://www.tohoho-web.com/wwwcook.htm
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!