* 覆蓋getparameter方法,將引數名和引數值都做xss過濾。
* 如果需要獲得原始的值,則通過super.getparametervalues(name)來獲取
* getparameternames,getparametervalues和getparametermap也可能需要覆蓋
*/@override
public string getparameter(string name)
return value;
} /**
* 覆蓋getheader方法,將引數名和引數值都做xss過濾。
* 如果需要獲得原始的值,則通過super.getheaders(name)來獲取
* getheadernames 也可能需要覆蓋
*/@override
public string getheader(string name)
return value;
} /**
* 將容易引起xss漏洞的半形字元直接替換成全形字符
* *@param s
*@return
*/private
static string xssencode(string s)
stringbuilder sb = new stringbuilder(s.length() + 16);
for (int i = 0; i < s.length(); i++)
} return sb.tostring();
} /**
* 獲取最原始的request
/*** 獲取最原始的request的靜態方法
} }2.建立filter
public
class
xssfilter
implements
filter
@override
public
void
dofilter(servletrequest request, servletresponse response,
filterchain chain) throws ioexception, servletexception
@override
public
void
destroy()
}
3.最後在web.xml中加入:
xssfilterfilter-name>
class>com.thinkgem.jeesite.common.filter.xssfilterfilter-class>
filter>
xssfilterfilter-name>
/*url-pattern>
本文章是根據兩位大神的部落格改編而來. JSP使用過濾器防止Xss漏洞
在用j a進行web業務開發的時候,對於頁面上接收到的引數,除了極少數是步可預知的內容外,大量的引數名和引數值都是不會出現觸發xss漏洞的字元。而通常為了避免xss漏洞,都是開發人員各自在頁面輸出和資料入庫等地方加上各種各樣的encode方法來避免xss問題。而由於開發人員的水平不一,加上在編寫 的...
Vue 過濾器案例(全域性過濾器和區域性過濾器)
doctype html en utf 8 viewport content width device width,initial scale 1.0 js vue 2.4.0 js script 過濾器 title head 兩個過濾器的名稱都為msgformat,但是控制不同作用,乙個是全域性的...
過濾器(6) 過濾器的攔截
本系列部落格彙總在這裡 過濾器彙總 我們來做個測試,寫乙個過濾器,指定過濾的資源為 index.jsp,然後我們在瀏覽器中直接訪問 index.jsp,你會發現過濾器執行了!但是,當我們在 helloservlet 中使用伺服器端的跳轉request.getrequestdispathcer ind...