問題タブ [sessionend]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
asp.net - セッション中に Session_End が複数回呼び出される
Session_End を間違って使用していますか?
私のアプリケーションでは、ページの読み込みを高速化するためのキャッシュがあり、非常にうまく機能します。最近、ある人から、メモリを空にしないとメモリ リークが発生するので、そのセッション ID に関連付けられたキャッシュ エントリをすべてクリアするメソッドを Session_End に実装するよう提案されました。
時折、異常な動作が見られるようになりました。ページをロードするときに、空のページが表示されることはほとんどありません。そのページのキャッシュが空であるため、例外が表示されます。キャッシュ アクセスと session_end メソッドにデバッガー ブレークポイントを設定し、次に発生したときにキャッチできるようにしました。
次にそれが起こったとき、私は実際に何が起こっていたのか非常に驚いた. 私のブラウザは開いたまま長時間アイドル状態だったので、古いセッション Cookie があったと推測されます。ページのサーバーにヒットし、ページのコピーがキャッシュに入れられます。ページがまだロードされている間に、Session_End が即座に呼び出され、キャッシュからページが削除されます。ブラウザーをリロードすると、Session_End が呼び出され続け、貧弱なブラウザーが要求し続けるセッションを積極的に閉じようとします。
したがって、私の本当の質問は次のとおりだと思います。
- 古いセッション Cookie が IIS にとって非常に不適切な場合、ブラウザが新しいセッション Cookie を取得しないのはなぜですか?
- Session_End は、このように使用するように設計されていませんか?
- 私がやろうとしていることを行うためのより良い方法はありますか?
@Sosh - 私の global.asax.cs:
php - PHPのSession_ONEnd
最近、PHPでプログラミングを始めました。
PHPでカートを作成しています。誰かがカートに商品を追加すると、商品がカートにロックされます。
特定のユーザーがログオフするか、セッションが期限切れになったときに、これらの製品のロックを解除する必要があります。
asp / asp.netのようにsession_onend関数のようなものを呼び出して、ロックされた製品のロックを解除/解放するにはどうすればよいですか?
asp.net - ASP.NET MVC: Session_End または直前のイベントでセッション データにアクセスする
ここに投稿されたこの質問と同様の質問を既に見ました。基本的に同じ質問がありますが、少しひねりがあります。
Session_End メソッド内からセッション情報にアクセスしようとしていますが、そこに到達するまでに HttpContext が null であるため、実際にアクセスする方法が見つかりません。Session_End が発火するまでに、すでに完全に消去されているようです。
関連する質問の解決策は、必要なセッション情報を参照するために使用できることを示しています。これは、 Global が継承する HttpApplication クラスから変数this.Session
にアクセスします。HttpApplication.Session
しかし、私のアプリケーションでは、Global で Session 変数を次のように再定義しました。
したがって、私にとっては、this.Session を参照すると、null である HttpContext から情報を取得しようとします。
だから私は2つの質問があると思います。まず、Session_End の前で、Session データがクリアされる前に発生するイベントはありますか? 次に、最初の質問に対する答えが「いいえ」の場合、Session_End からそのデータにアクセスする方法はまだありますか?
ありがとう。
asp.net - asp.net の Session_End メソッドと Application_End メソッドについて
System.Web.HttpApplication インターフェイスを実装するクラス (CustomerConnection クラスと呼びましょう) を実装しようとしています。この方法で、このクラスに session_end イベントと application_end イベントの 2 つのイベントを実装しようとしました。
しかし、これらのイベントは、アプリケーションの終了でもセッションのログアウトでも実行されていないようです。
これらのイベントを実行するにはどうすればよいですか? 特定の他のイベントに通知する必要があるようなものですか?
私は顧客クラスの新しいオブジェクトを作成しています。これらのイベントを実行するだけで十分ですか、それとも私のアプローチは根本的に間違っていますか?
私を助けてください
期待して感謝
asp.net-mvc-2 - MVC2Antiforgerytokenセッションの問題
MVC2アプリに偽造防止トークンを実装しました。にマシンキー
も追加しました。セッションの有効期限が切れて投稿しようとすると、エラーがスローされます。
偽造防止トークンの有効期限が切れているようです。 web.config
A required anti-forgery token was not supplied or was invalid
私の質問は
- セッションの有効期限後にエラーがスローされるのはなぜですか?
- トークンの有効期間はどれくらいですか?
c# - WPFアプリケーションでシャットダウンをブロックする必要がなくなったことをWindowsに伝えます
私のWPFアプリケーションでは、SessionEnding Eventを使用して、アプリケーションがデータを保存する必要があるときにWindowsがシャットダウンしないようにしています。動作しますが、シャットダウンをブロックする必要がなくなったことを Windows に伝える方法がわかりません。保存が現在行われているかどうかを示す bool 変数があります。SessionEnding でシャットダウンをブロックした場合、終了時にアプリを閉じるにはどうすればよいですか? ユーザーがシャットダウンをキャンセルしたかどうかわからないため、保存が終了したときに単にアプリを閉じたくありません。助けてください。
c# - タイトルバーの閉じるボタンを押したときにセッションの終了をキャッチする方法 asp.net c#
asp.net Web アプリケーションについて質問があります。SQL Server セッション状態を使用する Web アプリケーション。ログアウト イベントはセッションを削除できますが、タイトル バーの [閉じる] ボタンを押すとセッションが削除されます。タイトル バーの閉じるボタンを押したときに制御できるイベント。タイトルバーの閉じるボタンを押したときに session_end イベントがキャッチできることについて読みました。ただし、SQL Server セッション状態を使用して session_end イベントを発生させることはできません。どのようにキャッチすることができますか?
c# - ASP.net アプリケーションで一時ファイルを削除するのに最適な場所は?
asp.net アプリでいくつかの一時ファイルを作成します。ユーザーがそれらを使い終わったら、それらを削除する必要があります。
私は試した
しかし、それは機能していません。
何か案は?