Javascript RESTAPI和特殊字符的JSON问题

Javascript RESTAPI和特殊字符的JSON问题,javascript,jquery,json,angularjs,grails,Javascript,Jquery,Json,Angularjs,Grails,因此,我尝试检索包含许多文本的JSON,然后使用angularJS在UI上显示它。现在我对文本进行编码(使用java.net.URLEncode)并得到结果。JSON将文本转换为响应(很抱歉,我无法正确地构建问题框架),以便更清楚地了解问题所在。我发布了一个类似的问题 比如说 我有一个文本“My name is”“Mike”,它是返回JSON的get请求的参数。现在由于“”的原因(引号或任何其他特殊字符),响应是无效的JSON。(基本上JSON是在文本的这一点上剪切的) 为了解决这个问题,我对文

因此,我尝试检索包含许多文本的JSON,然后使用angularJS在UI上显示它。现在我对文本进行编码(使用java.net.URLEncode)并得到结果。JSON将文本转换为响应(很抱歉,我无法正确地构建问题框架),以便更清楚地了解问题所在。我发布了一个类似的问题

比如说

我有一个文本“My name is”“Mike”,它是返回JSON的get请求的参数。现在由于“”的原因(引号或任何其他特殊字符),响应是无效的JSON。(基本上JSON是在文本的这一点上剪切的)

为了解决这个问题,我对文本进行了编码,该文本至少返回一个有效的JSON,但文本转换为“My+name+is+”+“+Mike”

这是我不想要的东西,因为在UI上我想要原始文本(没有+)。我想在服务器端执行此操作

现在,我已经在UI级别上解码了文本

 decodeURIComponent((text+'').replace(/\+/g, '%20'));

但是我假设文本中的+全部被替换,但是如果+实际上是文本的一部分,比如“我的名字是迈克+伍兹”。我希望这更有意义。

到底是什么问题?你有
+
而不是```?我完全不明白你为什么要使用URLEncode。为什么你要使用URLEncode而不是将字符串作为json转储,然后将其从json序列化回字符串?如何生成json
“My+name+is+Mike”
不是有效的JSON字符串。请提供示例代码。
My+name+is+Mike
仍为URL编码。在URL编码中,
+
%20
是等效的。您用来生成JSON的JSON库将正确地转义您给它的任何值,这将使所有URL编码业务变得不必要。任何标准JSON库都不会生成无效的JSON。听起来您可能是在手动构建字符串,而不是使用JSON库,这只是自找麻烦。
 decodeURIComponent((text+'').replace(/\+/g, '%20'));