2016-04-11 4 views
0

私はJavaScriptでかなり新しいです、そして、私は次の疑問を持っています。私は前のページに戻るには、このリンクを見つけページにページに入ると、JavaScriptのhistory.back()関数がHttpRequestを生成するかどうかを確認します。

<a href="javascript:history.back()"><span class="glyphicon glyphicon-menu-left"></span> Indietro</a> 

私の疑いがある:

それが仕事の罰金は、(前のページに戻ってくる)ですが、それは私には思えますそののjavascript:history.back()は、HTTPリクエストを生成しない理由:

1)私はネットワークタブを開くと放火犯ここには生成されたリクエストはありません。

2)私はSpring MVCアプリケーションに取り組んでいます。ここをクリックすると、リクエストを処理するコントローラメソッドはありません。

本当ですか、それとも不足していますか?使い方?私は何が欠けていますか?

+0

ほとんどの用途では 'history.back()'を避け、標準のリンクを使用するだけです。あなたは「背中」が実際には意味をなさないと確信することはできません。ブックマークからページを開いた場合、「戻る」はサイトから完全に離れてしまう可能性があります。 – meagar

答えて

2

history.back()が最近のキャッシュからページを読み込むことができるため、ネットワークフェッチは発生しません。私の経験では、サーバーは更新されたページの有効期限ヘッダーがチェックされていません。有効期限はキャッシュ内の内容に基づいてチェックされます。

一般的な例外は、ページまたはその一部のコンテンツが期限切れであるか、キャッシュ不可能であること、またはページがPOSTであるか、またはURIのクエリ文字列で取得されたことを通知できるかどうかです。

これはブラウザが組み込まれているため、この動作がブラウザによって異なり、今後変更される可能性があります。

1

history.back()の方法は、ブラウザのネイティブの戻るボタン機能を利用しているだけです。したがって、HTMLリクエストを生成していません。しかし、あなたのページに戻るボタンを作成し、onClick()イベントを聞いてこれを追跡することができます。イベントが何らかのバックエンドエンドポイントに呼び出されてイベントをログに記録すると、成功時にはhistory.back()

関連する問題