「[[Open棟梁 wiki>https://opentouryo.osscons.jp]]」は、「[[Open棟梁Project>https://github.com/OpenTouryoProject/]]」,「[[OSSコンソーシアム .NET開発基盤部会>https://www.osscons.jp/dotNetDevelopmentInfrastructure/]]」によって運営されています。

-戻る
--[[Session管理機能]]
--[[Webアプリケーションの不正操作]]

* 目次 [#h170136f]
#contents

*概要 [#i1f5d24a]
-ブラウザのウィンドウ(タブ)毎にSessionスコープを生成する。~

-これにより、複数のブラウザ・ウィンドウを立ち上げる~
SessionステートフルなWebアプリケーションの開発が可能になる。

**処理方式概要 [#pfb46961]
-画面遷移のリダイレクト要求を除くGet要求時に「ブラウザ・ウィンドウGUID」を生成する。

-この「ブラウザ・ウィンドウGUID」を使用してブラウザ・ウィンドウ別Sessionスコープを生成する。
-ブラウザ・ウィンドウ上で、この「ブラウザ・ウィンドウGUID」をHidden項目やQuery Stringで持ち回る。
-「ブラウザ・ウィンドウ別Session領域」は、LRUで削除される。世代数は、FxWindowGuidMaxQueueLengthに設定できる。

-破線が当該Sessionスコープを表す。~
同一ブラウザ ウィンドウの「親画面~子画面」も同一のスコープ内に含める。
--外側の破線:ブラウザ・ウィンドウ別Session領域
--内側の破線:[[親画面別Session領域]]

#ref(SessionAreaPerBrowserWindow.png,left,nowrap,ブラウザ・ウィンドウ別Session領域)

**操作メソッド [#lcf9afef]
-BaseController~
https://github.com/OpenTouryoProject/OpenTouryo/blob/develop/root/programs/C%23/Frameworks/Infrastructure/Framework/Presentation/BaseController.cs#L3168

|SetDataToBrowserWindowSessionメソッド|データの設定|
|GetDataFromBrowserWindowSessionメソッド|データの取得|
|DeleteDataFromBrowserWindowSessionメソッド|データの削除(キー毎)|
|DeleteDataFromBrowserWindowSessionメソッド|データの削除(全て)|

トップ   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS