最近、ajax テクノロジーを学び、フロントエンドを HTML 静的 Web ページに変更して、ログインしたユーザー名を取得する方法を教えてください。誰もが最初に考えるのは、Cookie とセッションを使用することです。これは JSP ページでは実行できますが、静的 HTML ページでは実行できません。
まず、Cookie とセッションとは何ですか?まず、HTTP プロトコルがステートレス プロトコルであることは誰もが知っています。データ交換が完了すると、クライアントとサーバー間の接続が切断され、再度データを交換するには新しい接続を確立する必要があります。これは、サーバーが接続からセッションを追跡できないことを意味します。このとき、Cookieセッション追跡技術が登場しました。 顧客にパスを発行します。誰が訪問する場合でも、各自のパスを持参する必要があります。このようにして、サーバーはパスからクライアントの ID を確認できます。これが Cookie の仕組みであり、Cookie はクライアントに保存されます。セッションは、サーバーがクライアントのステータスを記録するために使用するメカニズムです。これは、サーバー上にユーザー プロファイル テーブルをクエリして、現在のクライアントと一致するかどうかを確認することと同じです。 Session はキーと値の属性ペアでもあり、getAttribute(Stringkey) メソッドと setAttribute(String key, Object value) メソッドを通じて顧客ステータス情報を読み取り、書き込みます。サーブレットでは、クライアントのセッションは request.getSession() メソッドを通じて取得されます。
HTML はログイン ユーザー名を取得します。セッションは、JSP の 9 つの組み込みオブジェクトの 1 つです。 HTML にはあまり優しくないので、静的リソースを取得するにはどうすればよいでしょうか? 1 つ目は、一時的なサーブレットを作成し、ユーザー セッションを保存して取得することです。 2つ目はパス+ユーザー名をバックグラウンドで連結してajaxでフロントに渡し、フロントがURLを取得して操作するというものです。
$.ajax({ URL: '/login', データ: { ユーザー名: ユーザー名、 パスワード: パスワード }、 タイプ: 'GET'、 成功: 関数 (結果) { if (結果コード === 0) { if(val == 数値){ layer.msg("ログイン成功", function () { window.location.href = "index1.html?"+$("#username").val()+""; }) }それ以外{ layer.msg('検証コードエラー') } } それ以外 { Layer.msg("ログインに失敗しました" + result.msg, {icon: 2}) } } }) }
重要なのは、文 window.location.href = "index.html?"+$("#username").val()+""; で、$("#username").val() はユーザーを取得します。 name 値、username はユーザー名の ID です。
まずユーザー名を受け取るための ID を定義します
<p id = "名前"></p>
次に、JSを通じてそれを取得します
<script type="text/javascript"> var url = location.href; //アラート(url); var num =url.indexOf("?"); var str = url.substr(num+1); $("#name").html("ようこそ" +str); </script>
最後に忘れずに付け加えてください
<script type="text/javascript" src="./layui/js/jquery.min.js"></script>
ログイン ユーザー名を取得するための Html のサンプル コードに関するこの記事はこれで終わりです。ログイン ユーザー名を取得するための Html に関する詳細については、downcodes.com の以前の記事を検索するか、引き続き次の関連記事を参照してください。今後もダウンコード.com をサポートしていきます。