MVC中ActionFilterAttribute用法並實現統一授權
http://blog.sina.com.cn/s/blog_78106bb10102v9b5.html
MVC中ActionFilterAttribute經常用來處理許可權或者統一操作時的問題。
先寫一個簡單的例子,如下:
比如現在有一個使用者管理中心,而這個使用者管理中心需要登入授權後才能進去操作或瀏覽資訊,這個時候我們不可能每一個頁面都寫一遍許可權的判斷,這個時候就需要我們進行統一判斷許可權,那麼怎麼統一許可權呢?如果你瞭解MVC那麼下面的程式碼應該很容易看懂,否則還是先看一下MVC基礎吧。
1.建立一個類(用來檢查使用者是否登入和使用者許可權)程式碼如下:
// 過濾器
public class MemberCheckAttribute : ActionFilterAttribute
{
//執行Action之前操作
public override void OnActionExecuting(ActionExecutingContext filterContext)
{
//判斷是否登入或是否用許可權,如果有那麼就進行相應的操作,否則跳轉到登入頁或者授權頁面
if (true)
{
//處理Action之前操作內容根據我們提供的規則來定義這部分內容
base.OnActionExecuting(filterContext);
}
else
{
//跳轉到登入頁面
filterContext.HttpContext.Response.Redirect("/login.html");
}
}
2.頁面程式,也就是控制器裡的程式,如下
//MemberCheck是擴充套件特性,自定義特性名稱是根據上面的類MemberCheckAttribute名進行變化
//當訪問/user/index時,程式會先走自定義特性MemberCheck然後再走Index
[MemberCheck]
public class UserController : Controller
{
public ActionResult Index()
{
return View();
}
}
解釋:ActionFilterAttribute有一下經常用到的方法
OnActionExecuted 在執行操作方法後由 MVC 框架呼叫。
OnActionExecuting 在執行操作方法之前由 MVC 框架呼叫。
OnResultExecuted 在執行操作結果後由 MVC 框架呼叫。
OnResultExecuting 在執行操作結果之前由 MVC 框架呼叫。
相關推薦
MVC中ActionFilterAttribute用法並實現統一授權
http://blog.sina.com.cn/s/blog_78106bb10102v9b5.html MVC中ActionFilterAttribute經常用來處理許可權或者統一操作時的問題。 先寫一個簡單的例子,如下: 比如現在有一個使用者管理中心,而這個使用
MVC學習筆記:MVC實現用戶登錄驗證ActionFilterAttribute用法並實現統一授權
重置 ids filter .config detail close login out gif 在項目下新建一個文件夾來專門放過濾器類,首先創建一個類LoginFilter,這個類繼承ActionFilterAttribute。用來檢查用戶是否登錄和用戶權限。: u
MMVVC設計方法介紹:經典MVC設計模式在Cocoa-MVC中的一種實現方法
MVC介紹 MVC在WEB開發中用於界定工作屬於Server端還是WEB前端還是十分清晰的。這也就是大家目前常見的MVC設計模式: View<===>Controller<===>Model 即Controller作為粘合劑分別於View和Model進行雙向通訊。
如何ScrollView在XIB或者Storyboard中設定約束並實現翻頁滾動效果
使用XIB對檢視進行約束非常簡單,也很方便,節省了很多程式碼量,這是眾所周知的事情!但是UIScrollView的約束在XIB裡面比較複雜,而且有時候對它進行約束會經常出錯,當然,這是對你沒有在SV(以下UIScrollView簡稱)上放置別的檢視來說,假如你要
JS方式實現百度地圖載入資料庫中的座標並實現動態重新整理
"); //設定地圖顯示的城市,這項是必須的map.enableScrollWheelZoom(true); //開啟滑鼠滾輪縮放var gPoints = [];Ext.Ajax.request({url : 'coords.do?method=getCoords',params : {},success
Redis的安裝、使用以及php中擴充套件redis並實現php操作redis的一個例子
1、下載原始碼包redis-2.8.21.tar.gz,並將其上傳到指定目錄/urs/src,然後對其進行解壓: [[email protected] src]# tar -xvf redis-2.8.21.tar.gz 進入解壓後的目錄,並執行下面命令,指定安裝
JQuery條件下使用 JS方式實現百度地圖載入資料庫中的座標並實現動態重新整理
功能:藉助JQuery,使用 JS 方式實現後臺載入座標資料然後顯示在百度地圖上,並每隔5秒重新整理一次資料。 對不同點使用不同的圖示進行標註,比如上傳時間大於半小時的點標記為紅色圖示,說明資料不實時, 對上傳時間短於半小時的,則用綠色的點表示正在運動的目標,藍色的點表示靜
PHP MVC中RBAC的最佳實現方案的比較
個人認為的PHP MVC框架中實現RBAC的原理 順序: 資料表 1.tb_user(id,uname,roleid) 2.tb_role(roleid,rolename) 3.tb_module(moduleid,moudulename,mvc_url) 4.tb_a
Spring.net 在mvc中的用法
1. 引dll檔案:Common.Loggong ,Spring.Core,Spring.Web ,Spring.Web.Mvc3 2. Global中public classMvcApplication : Spring.Web.Mvc.SpringM
使用HttpURLConnection呼叫url方式訪問spring mvc中的controller並傳json值與返回
package com.zl.test2; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStream; import jav
centos中安裝tomcat7,並實現web程式的熱部署
安裝前先檢查jdk是否安裝,如果沒有安裝,則先安裝jdk [root@tomcat home]# java -version java version "1.6.0_33" OpenJDK Runtime Environment (IcedTea6 1.1
【 iview 實踐指南】之在Table中使用 InputNumber 並實現列求和
view NPU 業務 www. 行數據 影響 實現 table 根據 先看一下實際需求: 這裏需要針對“非農保費計劃指標”做列求和; 本文以(https://www.cnblogs.com/likwin/p/10572203.html)為基
ASP.Net Core 5.0 MVC中AOP思想的體現(五種過濾器)並結合專案案例說明過濾器的用法
執行順序 使用方法,首先實現各自的介面,override裡面的方法, 然後在startup 類的 ConfigureServices 方法,註冊它們。 services.AddTransient(typeof(MyAction));
MVC中根據後臺絕對路徑讀取圖片並顯示在IMG中
copy ret execute ble 操作文件 初學者 實體類 cin jpeg 數據庫存取圖片並在MVC3中顯示在View中 根據路徑讀取圖片: 1 byte[] img = System.IO.File.ReadAllBytes(@"d:\x
在ASP.NET MVC中利用Aspose.cells 將查詢出的數據導出為excel,並在瀏覽器中下載。
width tdi 新增 column 需求 options 解決 印象 ats 正題前的嘮叨 本人是才出來工作不久的小白菜一顆,技術很一般,總是會有遇到一些很簡單的問題卻不知道怎麽做,這些問題可能是之前解決過的。發現這個問題,想著提升一下自己的技術水平,將一些學的新的‘好
asp.net MVC 中 Session統一驗證的方法
pla sta tails project ssi 一個 str urn string 驗證登錄狀態的方法有:1 進程外Session 2 方法過濾器(建一個類繼承ActionFilterAttribute)然後給需要驗證的方法或控制器加特性標簽 3 :新建一個Ba
html中提交表單並實現不跳轉頁面處理返回值
html value put 提示 pan sdn type detail all <html> <head> <script type="text/javascript" src="h
Spring MVC中@RequestParam/@RequestBody/@RequestHeader的用法收集(轉)
writer) public target load spa ive com query 我們 簡介: handler method參數綁定常用的註解,我們根據他們處理的Request的不同內容部分分為四類:(主要講解常用類型) A、處理requet uri部分(這裏指
.NET MVC中登陸授權過濾器的使用
== dir oid erb 說明 author lin ide lob 1、寫個類LoginAuthorityAttribute,繼承自AuthorizeAttribute using System; using System.Collections.Generi
在AD中如何實現統一桌面
實現 背景 e30 驗證 並且 圖片 blog 運行 環境 實驗環境,在公司中,老板要求市場部電腦都用統一的桌面,這時可以用AD域的組策略。實驗步驟:一:找到作為背景桌面的圖片,放到文件夾,並且共享,設置共享權限。二:打開組策略管理四:打開組策略管理後,右擊在這個域中新建G