7 2自定義開發Filter

2021-08-31 10:31:51 字數 1516 閱讀 8624

custom filters

➤iauthorizationfilter

➤iactionfilter

➤iresultfilter

➤iexceptionfilter

actionfilterattribute類

actionfilterattribute

public virtual void onactionexecuted(actionexecutedcontext filtercontext);

public virtual void onactionexecuting(actionexecutingcontext filtercontext);

public virtual void onresultexecuted(resultexecutedcontext filtercontext);

public virtual void onresultexecuting(resultexecutingcontext filtercontext);

actionexcutingcontext

屬性actionparameters

result

actionexcutedcontext

屬性canceled // true 不執行

exception //丟擲異常情況

exceptionhandled // boolean true 拿不到actionresult

result //可能生成假的

resultexecutingcontext

屬性cancel

result

resultexecutedcontext

屬性canceled // true 不執行

exception //丟擲異常情況

exceptionhandled // boolean true 拿不到actionresult

result //可能生成假的

編寫actionfilter

using system.diagnostics;

using system.web.mvc;

public class timerattribute: actionfilterattribute

public override void onactionexecuting(actionexecutingcontextfiltercontext)}

public override void onactionexecuted(actionexecutedcontextfiltercontext)}}

==[timer]

public actionresultindex()

the duration was: <%= viewdata[「__duration」] %>

filter執行順序

1、order小的先執行

2、具有同樣order的,看定義範圍

3、無order的最後執行

4、**內部定義的優先執行

5、同型別的filter無法確定執行順序

Shiro實現自定義filter

當使用者訪問匹配規則的url時觸發的過濾器,通常我們都繼承如下幾個類並重寫方法完成自定義過濾器 概述 這個類是遊客訪問即無需登入訪問的資源時進入的過濾器 概述 該方法如果返回true則可以訪問,返回false則不能訪問 引數request 關於這個請求的請求物件 引數response 關於這個請求的...

Filter傳送自定義資料詳解

裡介紹如何從建立資料到最後傳送資料的乙個過程。首先要做準你要傳送的資料,注意你的資料大小至少要不少於64byte。我們這裡設定資料報的大小為80byte.裡面的內容包含乙個14byte的ethernet header,其他空位用無用資料填充。下面是具體流程 一 建立緩衝區 用於儲存自定義的資料 pw...

django 自定義tag和filter

首先,在polls目錄下建立templatetags目錄,結構如下 polls init py models.py templatetags init py 包含了 init py的才會被django認作是資料夾 polls extras.py views.py 在模板中使用標籤時要 現在可以在po...