最近閲覧したプロファイルのリストを Cookie に保存したいと考えています。
ゲームのキャラクター ID (World of Warcraft) を入力して、キャラクターのプロフィールを表示できるサイトがあります。
文字 ID は、名前 (Unicode、最大 15 文字)、サーバー名 (Unicode、最大 25 文字)、およびゾーン (2 文字、latin-1) で構成されます。
すべてのブラウザーが Unicode Cookie に対応しているわけではないため、最近表示した最大 5 文字を Cookie に保存し、値を URL エンコードします。
これにより、この Cookie の長さは 2 つの 500 文字になります。
質問:これは合理的なアプローチですか? 評価していただきたいその他のソリューションをいくつか紹介します。
- データベースで定義されているように characterId を保存します。長所: Cookie のサイズが小さい、短所: a) データベースから文字を削除できる (データベースは更新を高速化するためのキャッシュにすぎない)、b) データベースのインデックスを再作成できる。
- 名前+サーバー+ゾーンハッシュを保存し、データベースでハッシュで検索します。短所: a) 繰り返しますが、データベースから文字を削除できます。長所: 再インデックスに耐性があります。
- ユーザーがアカウントを作成してそこに保存する必要があります。短所: アカウントを作成するのが好きな人はいません。
現在の解決策 (URL エンコードされたリストを Cookie に保存する) で十分でしょうか?
編集:「最近の文字」リストは、利便性のためだけにあることに注意することが重要です。それがクリアされても、まったく問題ありません (一部のアプリケーションでは「最近のファイル」に似ています)。