匿名質問者

サイト作成にあたり、Cookieが多すぎると何か問題がありますか?


サイト作成を趣味にしているものです。
今度、Jqueryのクッキーを使い、ボタンを押すことでCookieが設定され、それに合わせていろいろな要素(画像)を表示したり非表示にしたりすることができ、ブラウザを閉じてもその状態が保存できるサイトをつくろうかと思っています。
要素ごとにCookieを設定するので、もしすべてのボタンを押したらものすごい数のCookie(1つのサイトにつき50以上)が設定されることになりますが、何か問題ありますか?
例えばセキュリティソフトや検索サイトから怪しまれる、閲覧が非常に重くなる・・・・などなど

Cookieのことはよく知らないのですが、自分のブラウザのCookie履歴を見ると、一つのサイトに何十ものCookieがついていることは少ないみたいなので、何か問題があるかなと思い質問しました。
ちなみにCookieそのものは画像の非表示状態を保存するためだけのものです

よろしくお願いします。

回答の条件
  • 1人5回まで
  • 登録:
  • 終了:2016/12/08 22:17:03

ベストアンサー

匿名回答4号 No.2

思いついた問題点(未確認)

  1. ブラウザでcookieを保存しない設定にしてると意味をなさない
  2. 何十個も使うとブラウザがエラー吐く可能性(数か容量)
  3. ページ読み込むたびに取得しようするのでスマホとかのモバイル回線には辛いかも?
  4. キャッシュの肥大化

想定されている用途的にも連想配列で保存するようにして数と容量を減らすようにしたらいいんじゃないかと思います。

その他の回答1件)

匿名回答1号 No.1

他2件のコメントを見る
匿名回答3号

検索結果の1つにこういうのあったから安心してたんだけど情報が古かったって事ね

古い RFC は 2109 ですが、そちらでも "at least" の表現です。
https://www.ietf.org/rfc/rfc2109.txt
> * at least 300 cookies
>
> * at least 4096 bytes per cookie (as measured by the size of the
> characters that comprise the cookie non-terminal in the syntax
> description of the Set-Cookie header)
>
> * at least 20 cookies per unique host or domain name
情報が古いというのもありますが、そもそもその書籍の記載は誤解を招くものだと思います。
「教科書」を標榜するのであれば間違いと言っても良い。

2016/12/01 19:34:32
匿名質問者

ありがとうございます。
数は多くても有効なようですが、他にも調べてみるとさすがに一つのドメインに50は多い方みたいなので、同じクッキーを値で分岐させる方法も検討してみます。

2016/12/01 22:18:01
匿名回答4号 No.2

ここでベストアンサー

思いついた問題点(未確認)

  1. ブラウザでcookieを保存しない設定にしてると意味をなさない
  2. 何十個も使うとブラウザがエラー吐く可能性(数か容量)
  3. ページ読み込むたびに取得しようするのでスマホとかのモバイル回線には辛いかも?
  4. キャッシュの肥大化

想定されている用途的にも連想配列で保存するようにして数と容量を減らすようにしたらいいんじゃないかと思います。

  • 匿名回答2号
    匿名回答2号 2016/12/01 07:36:33
    localstorageではダメですか?
  • 匿名質問者
    匿名質問者 2016/12/01 22:19:14
    こんな便利なものがあるんですね。
    HTML5を勉強したら次回から導入してみようと思います。
  • 匿名回答5号
    匿名回答5号 2016/12/02 10:00:46
    私ならセッションを貼ってセッションクッキーを一つ出す。
  • 匿名回答5号
    匿名回答5号 2016/12/02 10:03:16
    クッキーの内容を配列にしてまとめるの方が楽なのか。
  • 匿名回答4号
    匿名回答4号 2016/12/02 18:02:12
    楽かどうかは慣れと内容次第かな。
    質問者の人は勉強中で基礎を覚えた感じだったので応用として連想配列を提案しました。
    セッションクッキーは自分の中で応用より上の発展に位置づけられる気がしたので書きませんでした。
  • 匿名回答2号
    匿名回答2号 2016/12/02 20:50:39
    選択後の情報を、サーバーとクライアント(ブラウザ)のどちらで処理するのかによって、回答も変わると思います。
    例えば、PCとスマホのように環境が変わっても同一の表示(選択後の情報)にしたい場合は、サーバー側に情報を保管して、クライアント側には1つの値(クッキーに保存)で済むようになります。
    それとは逆に、クライアント側に選択後の情報を保存する場合、サーバーは要素の情報(例えば、画像URLなど)を一緒に送ると無駄な通信が発生しないページが作成できます。(画像などはjQueryを利用して表示させてあげれば良いですから。)
    以上を踏まえて、クッキーを利用するよりはlocalstrageの方が条件に合っているのではないかと感じました。

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません