在上一章節(jié)中,我們處理了MVC多級目錄問題,參見《二、處理MVC多級目錄問題——以ABP為基礎架構的一個中等規(guī)模的OA開發(fā)日志》。從這章開始,我們將進入正式的開發(fā)過程。首先,我們要完成系統(tǒng)的基礎設置模塊(在后續(xù)的功能中,需要大量使用這些基礎設置信息)。和一般的OA系統(tǒng)不同,在律所OA系統(tǒng)中,用戶類別管理是基礎模塊中非常重要、使用頻率非常高的一個基礎模塊。雖然此功能只是很小的一個字典項設置,但是其中涉及了鎖、并發(fā)處理、領域服務于應用服務的劃分等繁瑣問題。
UI功能頁面介紹(因用戶功能未完成,欠缺刪除頁面)
UI方面,我們使用了Metronic+EasyUI做為主要呈現(xiàn)方式。其中我們對EasyUI做了相應調(diào)整,已使其更加適用于Metronic風格。其中,上圖所示的cnblogs.scss為本博客的UI風格(仿小米風格,未完工);color.scss為全局顏色設置;common.scss為全局公用css;easyui.custom.scss為我們對EasyUI的樣式修改;metronic.scss為我們對Metronic的樣式調(diào)整; site.scss為程序主css文件。我們在common.scss文件中,導入了color.scss。在site.scss文件中,導入了common.scss、metronic.scss和easyui.custom.scss文件。這樣在布局頁引入css文件時,我們僅需要引入單個site.min.css文件即可,而不用引入一大堆css文件。我們在布局頁中,大量使用了存儲于cdn上的一些css和js文件。這些大多都是一些公用類庫,大家可根據(jù)需要自行下載。
ABP對CSRF/XSRF跨站攻擊的處理
abp通過token驗證以解決上述攻擊問題。只要在模板文件(布局頁)中,增加@{SetAntiForgeryCookie();},即可方便在ABP內(nèi)置的ajax輔助方法中發(fā)送生成的token。但在實際使用中,我們需要做一些處理。ABP的view頁面文件繼承自View目錄下EasyFastWebViewPageBase類(該類最終繼承自AbpWebViewPage類),而SetAntiForgeryCookie()方法則是AbpWebViewPage類的內(nèi)置方法。所以,要使用SetAntiForgeryCookie()方法。我們必須要所有的布局頁全部繼承自EasyFastWebViewPageBase類。
延伸閱讀
- ssh框架 2016-09-30
- 阿里移動安全 [無線安全]玩轉(zhuǎn)無線電——不安全的藍牙鎖 2017-07-26
- 消息隊列NetMQ 原理分析4-Socket、Session、Option和Pipe 2024-03-26
- Selective Search for Object Recognition 論文筆記【圖片目標分割】 2017-07-26
- 詞向量-LRWE模型-更好地識別反義詞同義詞 2017-07-26
- 從棧不平衡問題 理解 calling convention 2017-07-26
- php imagemagick 處理 圖片剪切、壓縮、合并、插入文本、背景色透明 2017-07-26
- Swift實現(xiàn)JSON轉(zhuǎn)Model - HandyJSON使用講解 2017-07-26
- 阿里移動安全 Android端惡意鎖屏勒索應用分析 2017-07-26
- 集合結合數(shù)據(jù)結構來看看(二) 2017-07-26