我有几个GSP页面正在返回JSON数据。它看起来像(只是大得多)
<%@ page contentType="application/json" %>
{
"foo": "${somevalue}"
}
我在页面渲染器中使用了这个:
groovyPageRenderer.render view: '/renderService/foo', model: [foo: foo]
除了包含双引号和其他特殊字符的值使用"
而不是"
进行编码外,此操作效果良好
如何强制这些参数的编码为JSON而不是HTML/XML?
您可以使用以下指令更改特定GSP页面的默认编解码器:
<%@page expressionCodec="javascript" %>
Grails用户指南中有关XSS预防的部分提供了更多详细信息。