• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:Cookieの期限設定の書式について)

Cookieの期限設定の書式について

このQ&Aのポイント
  • ASPでCookieの期限を設定しているが、期限が正しく設定されない問題が発生している。
  • Cookieの期限の書式は特定の形式でなければ正しく設定されないことが分かった。
  • 次回は書式に厳密に従ってCookieの期限を設定する必要がある。

質問者が選んだベストアンサー

  • ベストアンサー
  • Bonjin
  • ベストアンサー率43% (418/971)
回答No.2

>Cookieが残ってしまいます と言うのは、Cookieが送られてしまうと言うことでしょうか?それとも一時フォルダにCookieファイルが残っているということでしょうか? 一時フォルダにファイルが残っていても、有効期限が切れていればCookieは送られないはずです。 >2005/07/10 22:15:42 >という値が入っているから期限が上手く設定できていないのでしょうか? これはあくまでASP内での情報の保持であって、レスポンスとして送られるときはちゃんとした書式になって出力されます。

Rubellite
質問者

お礼

問題解決を確認したテストスクリプト ■Cookie書き込み用スクリプト - [CookieWriteTest.asp] <% CheckValue="いろはにほへと" WriteTime=Now Response.Cookies("CheckValue")=CheckValue Response.Cookies("CheckValue").Domain="aaaa.co.jp" Response.Cookies("CheckValue").Expires= DateAdd("n", 3, Now) Response.Cookies("CheckValue").Path="/" Response.Cookies("WriteTime")=WriteTime Response.Cookies("WriteTime").Domain="aaaa.co.jp" Response.Cookies("WriteTime").Expires= DateAdd("n", 3, Now) Response.Cookies("WriteTime").Path="/" %> ■Cookie読み込み用スクリプト - [CookieWriteTestCheck.asp] <html> <head> <title></title> </head> <body> <% CheckValue=Request.Cookies("CheckValue") WriteTime=Request.Cookies("WriteTime") %> CheckValue:<%=CheckValue%><br> WriteTime:<%=WriteTime%><br> 現在の時刻:<%=Now%><br> </body> </html> ■Cookie削除用スクリプト - [CookieWriteDel.asp] <% CheckValue=Request.Cookies("CheckValue") WriteTime=Request.Cookies("WriteTime") Response.Cookies("CheckValue")=CheckValue Response.Cookies("CheckValue").Domain="aaaa.co.jp" Response.Cookies("CheckValue").Expires = DateAdd("d", -1, Now) Response.Cookies("CheckValue").Path="/" Response.Cookies("WriteTime")=WriteTime Response.Cookies("WriteTime").Domain="aaaa.co.jp" Response.Cookies("WriteTime").Expires = DateAdd("d", -1, Now) Response.Cookies("WriteTime").Path="/" %>

Rubellite
質問者

補足

ご回答ありがとうございます。 まず、 >一時フォルダにファイルが残っていても、有効期限が切れていればCookie >は送られないはずです。 こちらについては、テンポラリーファイルの削除は行わずにテストしており ますので、テンポラリーに残っているキャッシュファイルの有無が問題では ないようです。 >これはあくまでASP内での情報の保持であって、レスポンスとして送られるときはちゃ >んとした書式になって出力されます。 こちらのご回答を参考に、再度基本的な以下の様なASPを作成しテストしたところ、問題なく期限設定は出来ているようです。使用したいスクリプト上に問題があるように思わ れますので、使用したいスクリプト上でのCookieの期限設定に問題がないかどうか、 再度別質問として投稿させて頂きたいと思います。 お礼と致しまして、お礼文のところに、今回テストに使用しましたスクリプトを掲載 致しますので、今後どなたかが同じ問題で悩まれたときの参考になれば幸いです。

その他の回答 (2)

  • 2NN
  • ベストアンサー率40% (143/353)
回答No.3

#1ですが、誤答してしまったようです。。 大変失礼いたしました。

  • 2NN
  • ベストアンサー率40% (143/353)
回答No.1

Cookieは様々なブラウザが解釈するので、 書式は統一していないと有効にならないと思います。

Rubellite
質問者

補足

ご回答ありがとうございます。 googleで「ASP Cookie」と検索してみたところ、表示される日本語サイト の例では、 http://www.webkoza.com/doc1/cookie_a.htm#ASP http://www.site-cooler.com/kwl/asp/9.htm#9-4 http://www.site-cooler.com/tips/asp_cookie_write.htm すべて、 Response.Cookies("Knave").Expires = Date + 365 というように、Date関数に単純に数字を足すだけで、期限設定ができる、 との表現でかかれており、実際にこの数式を実行したときは、質問に書き ましたような、 Sun, 21-Feb-2002 02:22:54 GMT という書式にはならず、 2006/07/11 というように、「日にちの単純足し算」になっているようですが。。。

関連するQ&A

専門家に質問してみよう