私はWeb開発のトレーニングを行っており、JSPとサーブレットについて学習しています。私はある程度の知識を持っていますHttpSession
-私はいくつかのサンプルプロジェクトでそれを使用しました。
ブラウザでは、「Cookieを削除する」オプションを見てきました。クッキーを削除すると、それHttpSession
も削除されます。
クッキーとセッションは同じですか?それらの違いは何ですか?
私はWeb開発のトレーニングを行っており、JSPとサーブレットについて学習しています。私はある程度の知識を持っていますHttpSession
-私はいくつかのサンプルプロジェクトでそれを使用しました。
ブラウザでは、「Cookieを削除する」オプションを見てきました。クッキーを削除すると、それHttpSession
も削除されます。
クッキーとセッションは同じですか?それらの違いは何ですか?
回答:
セッションはユーザー情報を含むサーバー側のファイルですが、Cookieはユーザー情報を含むクライアント側のファイルです。セッションには、セッションを特定のユーザーにマップする一意の識別子があります。この識別子は、URLで渡すか、セッションCookieに保存できます。
最近のほとんどのサイトは2番目のアプローチを使用しており、URLに渡す代わりにCookieに識別子を保存します(これはセキュリティリスクを引き起こします)。おそらくこの方法を知らずに使用しているため、Cookieを削除することで、Cookieに含まれている一意のセッション識別子を削除するときに、一致するセッションを効果的に消去できます。
Cookieは、クライアントとサーバー間で送受信される短いテキスト文字列です。name=bob; password=asdfas
Cookieに保存して、サーバー側のクライアントを識別するために送受信することができます。これは、短期記憶のない銀行窓口とのやり取りであり、取引ごとに自分自身を特定する必要があると考えることができます。もちろん、この種の情報を保存するためにクッキーを使用するのは恐ろしいほど安全ではありません。Cookieのサイズにも制限があります。
これで、銀行の出納係が自分の記憶の問題について知ったとき、彼/彼女は紙にあなたの情報を書き留めて、短いID番号を割り当てることができます。次に、トランザクションごとにアカウント番号と運転免許証を提供する代わりに、「私はクライアント12です」と言うだけです。
それをWebサーバーに変換する:サーバーは関連情報をセッションオブジェクトに格納し、Cookieでクライアントに送り返すセッションIDを作成します。クライアントがCookieを送り返すと、サーバーはIDを使用してセッションオブジェクトを検索するだけです。したがって、Cookieを削除すると、セッションは失われます。
もう1つの方法は、サーバーがURL書き換えを使用してセッションIDを交換することです。
リンクがあるとしましょう- www.myserver.com/myApp.jsp
ページを移動して、すべてのURLを書き換えwww.myserver.com/myApp.jsp?sessionID=asdf
たりwww.myserver.com/asdf/myApp.jsp
、そのように識別子を交換したりできます。この手法はWebアプリケーションコンテナーによって処理され、通常、Cookieなしのセッションを使用するように構成を設定することで有効になります。
このスレッドにはすでに多くの貢献があります。シーケンス図を要約して、別の方法で説明してください。
これは、このトピックに関する優れたリンクでもあります。https://web.stanford.edu/~ouster/cgi-bin/cs142-fall10/lecture.php? topic = cookie
Cookieは基本的に、Webブラウザーを介してアクセスされるグローバル配列です。多くの場合、値の送受信に使用されます。フォーム間の値にアクセスするためのストレージメカニズムとして機能します。Cookieは、セッションと比較してそれらの使用に制約を追加するブラウザーによって無効にすることができます。
セッションは、ログインとログアウトの間の何かとして定義できます。ユーザーがログインしてからログアウトするまでの時間はセッションです。セッションは、セッション時間、つまりログアウト前の値のみを保存します。セッションは、ユーザーがログオンすると、ユーザーのアクティビティを追跡するために使用されます。
Asp.netのセッション:
1.アプリケーション全体のデータを維持します。
2.現在のセッションが生きている場合、データを永続化します。複数のコントローラーからアクセスできるいくつかのデータが必要な場合は、セッションはデータを保存および取得する方法です。
3.セッションは、ユーザー情報を含むサーバー側のファイルです。[セッションは、特定のユーザーにセッションをマッピングする一意の識別子です]
それをWebサーバーに変換する:サーバーは関連情報をセッションオブジェクトに格納し、Cookieでクライアントに送り返すセッションIDを作成します。クライアントがCookieを送り返すと、サーバーはIDを使用してセッションオブジェクトを検索するだけです。したがって、Cookieを削除すると、セッションは失われます。
Cookieはテキストファイル形式でブラウザに保存されます。保存されるデータの量は制限されます。4kb[4096bytes]のみが許可されています。$ _ COOKIE変数は同じ名前の複数のCookieを保持しません
でcookie値に簡単にアクセスできます。そのため、安全性が低くなります。setcookie ()関数は、
<html>
鬼ごっこ。
セッションはサーバー側に保存されます。無制限の量のデータが保存されます。セッションで複数の変数を保持します。でCookieの値に簡単にアクセスできないため、より安全です。
リンク: cookieとセッションの違い