4

永続データを保存する最良の方法は何ですか? ユーザーがページで最後にアクティブだった時間を節約したい.最初はローカルストレージを使用していましたが、使いやすいと思われたためCookieに切り替えました.今はデータベースに保存することを考えています.あなたは何を提案します.

また、ユーザーがページを離れたときに登録する良い方法を提案していただけますか?

4

3 に答える 3

3

そのメカニズムをどのようにユーザー固有にしたいかによって、クライアント側またはサーバー側のアプローチを選択する必要があります。ローカル ストレージは明らかにデバイスに依存します。より正確には、ユーザーが Web サイトへのアクセスに使用しているブラウザに依存します。

ユーザーが Web サイトにアクセスするたびに、同じマシン/ブラウザーから Web サイトにアクセスする可能性が高い場合は、Cookie がその役割を果たします。これはより大きなデータのチャンクに適しているため、ローカル ストレージは必要ありません。さらに、ユーザーはローカル ストレージをサポートしていないブラウザーを使用している可能性があります。Cookie は何年も前から存在しており、ほぼすべてのブラウザーとデバイスで機能します。

ただし、自宅のコンピューター、オフィスのコンピューター、スマートフォンなど、さまざまなデバイスから Web サイトにアクセスする可能性が高い場合は、ユーザー アカウントを使用したサーバー側のソリューションを検討する必要があります。ただし、ユーザー アカウントを作成する努力からユーザーが実際に利益を得られるようにしてください (おそらく、stackoverflow のような OpenID を使用します)。そうしないと、Web サイトの成功を危険にさらすことになります。

要するに...それはより設計上の決定であり、ユーザーを知り、達成しようとしていることを特定します。

于 2011-01-18T12:25:52.550 に答える
2

Cookie は、自動ログイン、言語、テーマ、タイムゾーンなど、主に Web サイトの使用に関する重要でないユーザー設定を保存するためによく使用されます。これらはユーザーのローカル マシンに保存されるため、Cookie はクライアント側の技術であり、クライアントによって自由に削除されるため、重要なデータを保存するために Cookie に依存したくないでしょう。

ただし、ユーザー名、パスワード、電子メール、お気に入りなどのドメイン固有のデータを保存する場合は、MySQL、MS SQL、または PostgreSQL などのリレーショナル データベース (RDBMS) を使用することをお勧めします。これらは、大量のデータと、トランザクション、効率、柔軟性などの有用な機能の機能スコアを処理する場合に実行可能です。

于 2011-01-18T12:14:24.620 に答える
0

ユーザーに関する他の情報を保存する必要がある場合は、この情報を他の情報と一緒にデータベースに保存します。つまり、ユーザー データベース テーブルにフィールド「last_time」を追加できます。代わりに DB を使用しない場合 (非常に奇妙です)、この情報を格納するためだけに DB を追加するのは少し誇張されている可能性があります。この情報をどのように使用する必要があるかについて少し詳しく説明していただけますか? Cookie を使用すると、ユーザーがサイトに接続している場合にのみアクセスできるようになるため、最善の解決策ではないと思います。

全体として、とにかく、SQL が最良の選択だと思います。

于 2011-01-18T12:15:31.357 に答える