ホームページ  >  記事  >  バックエンド開発  >  フィルタを使用してCookieに基づいた顧客アクセスログイン機能を実装するための詳細な説明

フィルタを使用してCookieに基づいた顧客アクセスログイン機能を実装するための詳細な説明

零下一度
零下一度オリジナル
2017-06-15 13:52:091612ブラウズ

この記事では主に、顧客が訪問ごとに 1 回だけログインできるようにするための Cookie に基づくフィルターの使用について紹介します。必要な友達はそれを参照してください。がログインボックスに表示され、次回からはログイン不要になります。/同様のオプションがある場合のメモとしてここに記録します。記事に間違いがあればご指摘ください

なぜ一度自己ログインと言っているのかというと、あるページにアクセスする際に、初めて自動ログインに失敗すると、次回からは再度自動ログインのプロセスを経るからです。訪問を更新すると、無限ループが発生します。

この記事のコード例フレームワークは Spring MVC であり、この機能を実装するために必要な知識を以下に説明します: Cookie とフィルター

1. Cookie Cookie とは: Cookie はユーザー関連の情報を保存します。 Web アプリケーション 便利なメソッドが提供されています。たとえば、ユーザーがサイトにアクセスしたときに、Cookie を使用してユーザーの設定やその他の情報を保存し、次回ユーザーがサイトにアクセスしたときに、アプリケーションが以前に保存した情報を取得できるようにすることができます。

Cookieの保存方法とCookieの削除方法を見てみましょう

Cookieの保存

String newUserName = null;
try {
  newUserName = URLEncoder.encode(username, "UTF-8");//把用户名转码,防止用户名是中文,cookies保存中文取出会乱码
} catch (UnsupportedEncodingException e) {
  e.printStackTrace();
}
Cookie nameCookie = new Cookie("username", newUserName);
String pwdMd5Cook = MD5Util.MD5(Pwd);
Cookie pwdCookie = new Cookie("pwd", pwdMd5Cook);// 保存加密后的密码
nameCookie.setMaxAge(60 * 60 * 24 * 365);// 用户名保存一年
pwdCookie.setMaxAge(60 * 60 * 24 * 30);// 密码保存30天
// 发送Cookie信息到浏览器
response.addCookie(nameCookie);
response.addCookie(pwdCookie);

Cookieの削除は非常に簡単ですが、Cookieの削除は保存と同じコントロール内にある必要があることに注意してください。そうしないと、保存された Cookie が見つからず削除できません


2.フィルター - フィルター

フィルターは、サーブレット Web テクノロジーの中で最も実用的なテクノロジーです。開発者はフィルタ テクノロジを使用して、Web サーバーによって管理されるすべての Web リソース (Jsp、サーブレット、静的画像ファイル、静的 HTML ファイルなど) をインターセプトし、いくつかの特別な機能を実現します。たとえば、URL レベルの権限アクセス制御、機密語彙のフィルタリング、応答情報の圧縮などの高度な機能を実装できます。 実装方法: Filter インターフェースを継承し、その doFilter メソッドを実装します。作成したフィルター クラスを Web に登録します。自動的にログインするロゴ (IsAutomaticLogin)、このロゴは自動ログイン中に保存されます (成功または失敗に関係なく)

3。表示に誤りがある場合は、ぜひご指摘ください


rree

以上がフィルタを使用してCookieに基づいた顧客アクセスログイン機能を実装するための詳細な説明の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。