我应该HTML编码我的Web API的响应

时间:2013-08-20 02:50:22

标签: json asp.net-web-api html-encode

我正在设计一个Web API,它返回JSON作为内容类型,响应主体可以包含'"<>等字符,它们是JSON中的有效字符。所以,我的问题是我应该为我的Web API响应主体执行HTML编码,还是应该将此任务留给使用我的Web API的HTML客户端?

2 个答案:

答案 0 :(得分:9)

没有;你不能。

只有在将数据连接成结构化格式时才能转义数据。

如果您返回{ "text": "Content by X &amp; Y" }之类的JSON,那么读取该JSON的任何人都会看到文字&amp;
只有在没有转义的情况下将其直接连接到HTML中的极其破碎的客户端才能正常工作。

简而言之:

永远不要转义文本,除非您要显示它

答案 1 :(得分:0)

您使用的是什么平台?例如,Node.js,你可以使用restify来处理它。您不需要显式编码数据。因此,请找一个安静的框架或组件来帮助您。