json中的Html - 如何使其有效(使用javascript)?

时间:2015-01-11 17:40:31

标签: javascript json json.net html-encode

我正在使用json.net自动将我的json对象反序列化为.net对象。只要json有效,它就会有效。

但我在json中遇到html问题...特殊字符和引号使json无效。

如何可靠地编码或转义html,以便它是有效的json?我需要一种方法来使用javascript,因为它是客户端发送到服务器端。

修改 举一个我的用例示例,我在我的应用程序中有一个WYSIWYG,我需要输入,作为json对象的一部分,将其发布到我的服务器。

1 个答案:

答案 0 :(得分:2)

  

仅举一个我的用例示例,我的应用程序中有一个WYSIWYG   我需要作为json对象的一部分包含的输入   发布到我的服务器。

假设您在字符串变量中有用户输入:

var userInput = 'Any crap with HTML you can imagine';

您可以简单地对其进行JSON编码,以便将其作为有效的JSON字符串传输:

var json = JSON.stringify({ value = userInput });

现在生成的对象将如下所示:

{
    "value": "Any crap with HTML you can imagine"
}

并在您的服务器上将其映射到具有普通Value字符串属性的POCO。 JSON.stringify方法将确保将任何输入正确序列化为有效的JSON字符串。

这就是说,我不太明白你需要在JSOn字符串中包装用户输入,然后使用JSON.NET在服务器上反序列化它。我宁愿按原样发送原始输入。这样,您可以在服务器上获得完全相同的值,而无需JSON序列化的开销。