我有app引擎应用程序,它使用java servlet将消息保存到用户发布的数据存储区(使用表单)。
String content = req.getParameter("message");
message.setProperty("content", content);
当稍后在JSP中处理消息时,如果用户在键入消息时点击“输入”,则会收到运行时错误。
messageArray[<%=i%>]= {
content: "<%=message.getProperty("content")%>",
我该如何解决这个问题?我想保存“输入”以正确显示消息。
谢谢!
答案 0 :(得分:1)
您将不得不使用类似JSON编码的东西来使字符串安全地包含在JavaScript源代码中。无论如何,你应该这样做,以防止明显的XSS攻击。
JavaScript不允许字符串常量中的原始换行符。如果你想,你可以创建自己的EL函数来清理字符串,将不可打印的字符转换为\uXXXX
转义,并确保嵌入的引号前面有反斜杠。