jquery ajax html编码,MVC,JQUERY,AJAX,HTML编码JSON响应

博客讨论了在MVC应用中如何防止跨站点脚本攻击(XSS)。作者通过一个使用JQUERY AJAX提交表单的示例,提出需要对服务器返回的JSON响应中的HTML内容进行编码,特别是`item.Message`字段。他们寻求解决方案来正确地编码这个值,以确保安全显示在页面上。示例代码展示了如何处理AJAX成功回调中的响应数据。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

这个问题之前已经被问到过,但我必须意识到,我没有找到真正的/最好的方式来做到这一点!MVC,JQUERY,AJAX,HTML编码JSON响应

问题是,我想编码从AJAX调用中获得的响应,以防止跨站点脚本攻击(XSS)攻击。我有一个带有文本框和提交按钮的表单。提交时,该值将发布到服务器并返回给客户端。在这里,我需要对html响应进行编码,如可能是“alert('Hello')”等。

如何编码item.Message以下内容?

查看

$(document).ready(function() {

$("form[action$='SubmitChatMessage']").submit(function() {

$.ajax({

url: $(this).attr("action"),

type: "post",

dataType: "json",

data: $(this).serialize(),

success: function (response) {

$("#chatMessages").empty();

var chatMessages = "";

$.each(response, function (i, item) {

chatMessages += '

' + item.Message + '
';

});

$("#chatMessages").html(chatMessages);

$("#message").val(''); // Clear the textbox value

}

});

return false;

});

});

{%>

控制器动作

[HttpPost]

[ValidateInput(false)]

public JsonResult SubmitChatMessage(string message, Guid productID)

{

// 1. Store message in db

// 2. Fetch messages from db

List chats = DB.GetMessages(productID);

var json = (from c in chats

select new {Message = c.Message, CreatedDate = c.Created});

return Json(json);

}

希望得到的答案,这是推动我疯了! 类似的问题被给出here,但我不能看到如何在我的情况下使用.text。

2011-07-22

Nima

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值