.NET 4.0下 當(dāng)ashx頁(yè)面報(bào)錯(cuò):檢測(cè)到有潛在危險(xiǎn)的 Request.Form 值

2012-12-11 12:46 原創(chuàng)

eb開(kāi)發(fā)中難免要多到ajax技術(shù). 
asp.net中我們處理ajax后臺(tái)頁(yè)面有人喜歡用aspx頁(yè)面,也有人喜歡用ashx頁(yè)面,相比后者處理速度更快. 
但是當(dāng)你的環(huán)境是 .NET 4.0,而 ajax 中提交的參數(shù)正好有特殊字符時(shí),比如 name= 
這時(shí)就會(huì)報(bào)錯(cuò):檢測(cè)到有潛在危險(xiǎn)的 Request.Form 值 
這時(shí)我們需要修改web.config文件,如下: 

讓它的驗(yàn)證模式為.NET 2.0模式,這時(shí)ashx就不會(huì)報(bào)錯(cuò). 
因?yàn)?.0的驗(yàn)證在HTTP的BeginRequest前啟用,因此,請(qǐng)求的驗(yàn)證適用于所有ASP.NET資源,aspx頁(yè)面,ashx頁(yè)面,Web服務(wù)和一些HTTP處理程序等. 
當(dāng)然如果是在aspx頁(yè)面報(bào)這個(gè)錯(cuò)誤就是在頁(yè)頭加驗(yàn)證屬性,非常簡(jiǎn)單,google查詢(xún)一下即可. 
如果有人問(wèn) 一些特殊字符在ajax怎么傳到后臺(tái)ashx頁(yè)面呢.比如 abc.aspx?name=as&cd這里的name值是as&cd 而不是as 這個(gè)問(wèn)題可以查看我的另一篇博客 點(diǎn)擊這里查看


回應(yīng) 舉報(bào)
收藏

推薦閱讀

春天的花朵
春天的花朵