午夜勾魂曲-午夜福利自怕-午夜福利在线观看6080-午夜福利院电影-国产精品毛片AV久久97-国产精品麻豆高潮刺激A片

"從客戶端中檢測到有潛在危險的 Request.Form 值"的解決方案匯總

2020-3-22    seo達人

在一個asp.net 的項目中,前端通過ajax將富文本中的文字內容post到服務端的一個ashx中,在ashx中嘗試讀取參數值時,

結果報錯:“從客戶端中檢測到有潛在危險的 Request.Form 值”

#事故分析
由于在asp.net中,Request提交時出現有html代碼字符串時,程序系統會認為其具有潛在危險的值。會報出“從客戶端 中檢測到有潛在危險的Request.Form值”這樣的Error。

而富文本中的內容是包含html代碼的,所以...

#解決方案:
1、前端對富文本字符串進行encodeURI編碼,服務端進行HttpUtility.UrlDecode解碼操作;
前端代碼:

var str = '<p><span style="color: #00B0F0;"><em><strong>我想留在你的身邊,</strong></em></span><br/></p><p><span style="color: #7030A0;"><strong><span style="text-decoration: underline;">深情款款多么可憐;</span></strong></span></p>';
    $(function() {
        $.ajax({
            type: "post",
            url: "TestHandle.ashx",
            data: { Title: 'jack', Content: encodeURI(str) },
            success: function (data) {
                $("#div").html(data);
            }
        });
    });
后端代碼:

    public void ProcessRequest(HttpContext context)
    {
        string str = context.Request["content"];
        string content = HttpUtility.UrlDecode(str);
        context.Response.ContentType = "text/plain";
        context.Response.Write(content);
    }
效果圖:

2、前端不以form的方式提交,直接以json方式提交,服務端從request的body中讀取數據,然后反序列化,得到信息;
前端代碼:

    var str = '<p><span style="color: #00B0F0;"><em><strong>我想留在你的身邊,</strong></em></span><br/></p><p><span style="color: #7030A0;"><strong><span style="text-decoration: underline;">深情款款多么可憐;</span></strong></span></p>';
    var temp = { Title: 'jack', Content: str };
    $.ajax({
        type: "post",
        url: "TestHandle.ashx",
        contentType:"application/json;charset=utf-8",
        data: JSON.stringify(temp),
        success: function (data) {
            $("#div").html(data);
        }
    });
后端代碼:

    string bodyText;
    using (var bodyReader = new System.IO.StreamReader(context.Request.InputStream))
    {
        bodyText = bodyReader.ReadToEnd();
    }
    dynamic bodyObj = JsonConvert.DeserializeObject(bodyText);
 
    context.Response.ContentType = "text/plain";
    context.Response.Write(bodyObj.Content);
效果圖:

#其他場景的解決方案:
1、aspx頁面,當前頁面進行form提交
打開當前.aspx頁面,頁頭加上代碼:validateRequest=”false”,如:

<%@ Page Language="C#" ValidateRequest="false" AutoEventWireup="false" CodeFile="default.aspx.cs" Inherits="default" %>
該方法不推薦,還有一種修改web.config配置文件的方法,強烈不推薦,就不寫在這里了;

2、在ASP.NET MVC中的解決方案
1)、針對某個實體類的單個字段設置 [AllowHtml] ,這樣提交的時候,系統就會放過該字段。

2)、前端代碼:

    var str = '<p><span style="color: #00B0F0;"><em><strong>我想留在你的身邊,</strong></em></span><br/></p><p><span style="color: #7030A0;"><strong><span style="text-decoration: underline;">深情款款多么可憐;</span></strong></span></p>';
    $(function () {
        $.ajax({
            type: "post",
            url: "Home/Test",
            data: { Title: 'jack', Content: str },
            success: function (data) {
                $("#div").html(data.ok);
            }
        });
    });
3)、后端代碼:

    public class NewInfo
    {
        public string Title { get; set; }
        [AllowHtml]
        public string Content { get; set; }
    }
 #寫在最后
 該文只是淺顯的總結一下,其中涉及的xss方面,沒有詳細考慮,歡迎指正!

日歷

鏈接

個人資料

藍藍設計的小編 http://www.gerard.com.cn

存檔

主站蜘蛛池模板: 日本熟妇乱妇熟色A片蜜桃 日本熟妇多毛XXXXX视频 | s8sp视频高清在线播放 | 户外露出野战hd | 1V1各种PLAY女主被肉 | 美国特级成人毛片 | 麻豆一二三四区乱码 | 樱桃bt在线www| 色婷婷国产精品视频一区二区三区 | 国产精品.XX视频.XXTV | 精品视频一区二区三三区四区 | 亚洲在线无码免费观看 | 男女夜晚在爽视频免费观看 | 日本理论片和搜子同居的日子2 | 午夜理论在线观看不卡大地影院 | 精品国产乱码久久久久久免费 | 儿子好妈妈的HD3中字抢劫 | 女人被躁到高潮嗷嗷叫69 | 国产精品久久人妻无码网站一区无 | 最新亚洲人成网站在线影院 | 出轨的妻子在线观看 | 24小时日本在线电影 | 在线观看视频国产 | 97人人碰免费视频公开 | 顶级欧美不卡一区二区三区 | 欧式午夜理伦三级在线观看 | 啊灬啊别停灬用力啊在线观看视频 | 久久精品AV麻豆 | 无码AV熟妇素人内射V在线 | 精品一区二区三区免费观看 | 抽插内射高潮呻吟爆乳 | 亚洲黄色免费在线观看 | 欧美激情一区二区三区视频 | 风月宝鉴之淫乱英雄传 电影 | 蜜桃狠狠色伊人亚洲综合网站 | 天美传媒在线观看完整高清 | 国产人妻777人伦精品HD | 挺进老师的紧窄小肉六电影完整版 | 精品久久中文字幕有码 | 日本A级作爱片金瓶双艳 | 春药按摩人妻中文字幕 | 亚洲免费在线观看 |