c#反序列化JSON html字符串
C# Deserialize JSON html string
我试图在c#中反序列化JSON对象,我的问题是其中一个字段可以包含html文本(我计划事后对其进行消毒)。
我正在使用JavaScriptSerializer对象来反序列化,但是我得到一个"传入无效对象"错误(来自JavaScriptSerializer)。如果我为相同的字段传递纯文本,它会正常工作,对象中的其他字段(包括日期和数组)也会正确反序列化,所以看起来html是什么绊倒了它。
我使用JSON。stringify序列化Javascript对象,我通过jQuery将其传递给我的页面。
是否有我应该做的事情,以传递一个包含html的字符串?我试过用引号把它括起来,但是没有用。
作为接受字符串与抛出错误的例子:"Test"是好的,而
"<div style="text-align: center;">Test</div>"
不是。奇怪的是,<span>
标签似乎也很好。
能否在序列化前用javascript escape()
函数对html进行编码?
您可能必须在javascript中编码uriccomponent,然后是HttpServerUtility。.NET中的UrlDecode
由于安全原因,您不能传入未编码的HTML字符。你可以在MVC中重写这个。如果您对源代码感到安全,请在功能级应用Net。
就像这样做一些替换jsonString.Replace(@"=""'""",@"='""'""").Replace(@"'""""",@"'""'""").Replace(@"=""""", @"='""'""")
相关文章:
- 如何使用JQuery在Javascript中转换字符串中的HTML元素
- 如何使用JQuery在HTML中创建包含字符串参数的引号的onclickjavascript链接
- 如何使用gump任务将html转换为javascript字符串
- 将html元素插入到文本字符串中,以匹配另一个html字符串
- HTML字符串作为上下文
- 字符串中的
标记未正确在 HTML 中创建新行 - 将HTML(支持文件)中的令牌(字符串、数字等)传递给LogiXML
- 如何使用javascript选择字符串的部分,添加html标记或删除部分
- Visual Studio 2015 扩展将 JavaScript 文件中的字符串 HTML 视为 HTML 编辑
- 如何使用jquery插入多行字符串html
- 创建一个通过页面的查询字符串HTML表单
- PayPal确认,然后返回一个字符串HTML(js或任何其他..)
- 使用Javascript DOMParser将单字符串HTML格式化为多行选项卡HTML
- 如何转义字符串(HTML)中的多个层次引号
- 解析笑脸与文本字符串html和保持笑脸在显示顺序
- Regex帮助,JS尝试将字符串(html)转换为数字
- removeAttr在字符串html
- jqgrid asp.net-Javascript字符串HTML合成
- 如何用另一个标记替换字符串HTML标记
- 将变量追加到字符串html中