我正在尝试使用AJAX读取XML,所有数据都来自格式良好的XML文件,然后通过AJAX发送到客户端页面。但xmlhttp.responseXML始终无法使用。
这是我的控制器:
def fileGetter = {
if (params.fileId) {
try {
String resultStr = fileManipulatorService.fileProvider(params.fileId).getText()
println resultStr
render(text: resultStr, contentType: "text/xml", encoding: "ISO-8859-1")
response.sendError(200)
}
}
}
resultStr
包含正确的xml,在我的网页上xmlhttp响应文本也包含正确的xml数据,而xmlhttp响应xml不包含任何内容。如何将真正的xml数据发送到我的客户端页面并利用它?我也需要使用XML响应。 (我试图发送一个从字符串创建的新xml对象,我试图返回原始文件,但这些方法都没有工作)
(我正在使用Chrome)
谢谢
答案 0 :(得分:2)
我不确定这是否是您问题的原因,但这段代码没有任何意义
render(text: resultStr, contentType: "text/xml", encoding: "ISO-8859-1")
response.sendError(200)
执行render
后Grails不会返回,因此它会在返回有效数据后执行response.sendError
。用
render(text: resultStr, contentType: "text/xml", encoding: "ISO-8859-1")
答案 1 :(得分:0)
你可以试试 将resultStr渲染为XML
它应该有用,但我真的不喜欢这些converters。