Csrf攔截器

1亭螟,攔截器的概念 java里的攔截器是動(dòng)態(tài)攔截Action調(diào)用的對(duì)象燃异,它提供了一種機(jī)制可以使開發(fā)者在一個(gè)Action執(zhí)行的前后執(zhí)行一段代碼,也可以在一個(gè)Action執(zhí)行前阻止其執(zhí)行,同時(shí)也提供了一種可以提取Action中可重用部分代碼的方式瘟裸。在AOP中浴韭,攔截器用于在某個(gè)方法或者字段被訪問之前丘喻,進(jìn)行攔截然后再之前或者之后加入某些操作。目前念颈,我們需要掌握的主要是Spring的攔截器泉粉,Struts2的攔截器不用深究,知道即可。2嗡靡,攔截器的原理 大部分時(shí)候跺撼,攔截器方法都是通過代理的方式來調(diào)用的。Struts2的攔截器實(shí)現(xiàn)相對(duì)簡(jiǎn)單讨彼。當(dāng)請(qǐng)求到達(dá)Struts2的ServletDispatcher時(shí)歉井,Struts2會(huì)查找配置文件,并根據(jù)配置實(shí)例化相對(duì)的攔截器對(duì)象哈误,然后串成一個(gè)列表(List)哩至,最后一個(gè)一個(gè)的調(diào)用列表中的攔截器。Struts2的攔截器是可插拔的蜜自,攔截器是AOP的一個(gè)實(shí)現(xiàn)菩貌。Struts2攔截器棧就是將攔截器按一定的順序連接成一條鏈。在訪問被攔截的方法或者字段時(shí)重荠,Struts2攔截器鏈中的攔截器就會(huì)按照之前定義的順序進(jìn)行調(diào)用箭阶。3,自定義攔截器的步驟 第一步:自定義一個(gè)實(shí)現(xiàn)了Interceptor接口的類晚缩,或者繼承抽象類AbstractInterceptor尾膊。 第二步:在配置文件中注冊(cè)定義的攔截器。 第三步:在需要使用Action中引用上述定義的攔截器荞彼,為了方便也可以將攔截器定義為默認(rèn)的攔截器冈敛,這樣在不加特殊說明的情況下,所有的Action都被這個(gè)攔截器攔截鸣皂。4抓谴,過濾器與攔截器的區(qū)別 過濾器可以簡(jiǎn)單的理解為“取你所想取”,過濾器關(guān)注的是web請(qǐng)求寞缝;攔截器可以簡(jiǎn)單的理解為“拒你所想拒”癌压,攔截器關(guān)注的是方法調(diào)用,比如攔截敏感詞匯荆陆。4.1滩届,攔截器是基于java反射機(jī)制來實(shí)現(xiàn)的,而過濾器是基于函數(shù)回調(diào)來實(shí)現(xiàn)的被啼。(有人說帜消,攔截器是基于動(dòng)態(tài)代理來實(shí)現(xiàn)的)4.2,攔截器不依賴servlet容器浓体,過濾器依賴于servlet容器泡挺。4.3,攔截器只對(duì)Action起作用命浴,過濾器可以對(duì)所有請(qǐng)求起作用娄猫。4.4贱除,攔截器可以訪問Action上下文和值棧中的對(duì)象,過濾器不能媳溺。4.5月幌,在Action的生命周期中,攔截器可以多次調(diào)用褂删,而過濾器只能在容器初始化時(shí)調(diào)用一次飞醉。5冲茸,Spring攔截器5.1屯阀,抽象類HandlerInterceptorAdapter 我們?nèi)绻陧?xiàng)目中使用了Spring框架,那么轴术,我們可以直接繼承HandlerInterceptorAdapter.java這個(gè)抽象類难衰,來實(shí)現(xiàn)我們自己的攔截器。spring框架逗栽,對(duì)java的攔截器概念進(jìn)行了包裝盖袭,這一點(diǎn)和Struts2很類似。HandlerInterceptorAdapter繼承了抽象接口HandlerInterceptor彼宠。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末鳄虱,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子凭峡,更是在濱河造成了極大的恐慌拙已,老刑警劉巖,帶你破解...
    沈念sama閱讀 221,635評(píng)論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件摧冀,死亡現(xiàn)場(chǎng)離奇詭異倍踪,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)索昂,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,543評(píng)論 3 399
  • 文/潘曉璐 我一進(jìn)店門建车,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人椒惨,你說我怎么就攤上這事缤至。” “怎么了康谆?”我有些...
    開封第一講書人閱讀 168,083評(píng)論 0 360
  • 文/不壞的土叔 我叫張陵领斥,是天一觀的道長(zhǎng)。 經(jīng)常有香客問我秉宿,道長(zhǎng)戒突,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 59,640評(píng)論 1 296
  • 正文 為了忘掉前任描睦,我火速辦了婚禮膊存,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己隔崎,他們只是感情好今艺,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,640評(píng)論 6 397
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著爵卒,像睡著了一般虚缎。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上钓株,一...
    開封第一講書人閱讀 52,262評(píng)論 1 308
  • 那天实牡,我揣著相機(jī)與錄音,去河邊找鬼轴合。 笑死创坞,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的受葛。 我是一名探鬼主播题涨,決...
    沈念sama閱讀 40,833評(píng)論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼总滩!你這毒婦竟也來了纲堵?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,736評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤闰渔,失蹤者是張志新(化名)和其女友劉穎席函,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體澜建,經(jīng)...
    沈念sama閱讀 46,280評(píng)論 1 319
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡向挖,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,369評(píng)論 3 340
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了炕舵。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片何之。...
    茶點(diǎn)故事閱讀 40,503評(píng)論 1 352
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖咽筋,靈堂內(nèi)的尸體忽然破棺而出溶推,到底是詐尸還是另有隱情,我是刑警寧澤奸攻,帶...
    沈念sama閱讀 36,185評(píng)論 5 350
  • 正文 年R本政府宣布蒜危,位于F島的核電站,受9級(jí)特大地震影響睹耐,放射性物質(zhì)發(fā)生泄漏辐赞。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,870評(píng)論 3 333
  • 文/蒙蒙 一硝训、第九天 我趴在偏房一處隱蔽的房頂上張望响委。 院中可真熱鬧新思,春花似錦、人聲如沸赘风。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,340評(píng)論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽邀窃。三九已至荸哟,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間瞬捕,已是汗流浹背鞍历。 一陣腳步聲響...
    開封第一講書人閱讀 33,460評(píng)論 1 272
  • 我被黑心中介騙來泰國(guó)打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留山析,地道東北人堰燎。 一個(gè)月前我還...
    沈念sama閱讀 48,909評(píng)論 3 376
  • 正文 我出身青樓掏父,卻偏偏與公主長(zhǎng)得像笋轨,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子赊淑,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,512評(píng)論 2 359

推薦閱讀更多精彩內(nèi)容