Grails文件下载 - 客户端

时间:2013-06-28 11:52:43

标签: ajax file grails download

我正在尝试使用grails下载文件。我在这个网站上遵循了一些解决方案,我认为该文件正在从控制器中正确传回。当我检查传回的数据时,我可以看到文件内容。

但是下载没有开始。我不确定客户端应该是什么。

我正在使用jquery调用此控制器动作。

File fd = new File(filename)
        response.setContentType("application/octet-stream")
        response.setHeader("Content-disposition", "attachment; filename= ${fd.getName()}")
        response.outputStream << fd.newInputStream()
        response.outputStream.flush()

这里是jquery 9我需要将文件名作为参数传递:

    jQuery.ajax({
            url : "/dev/image/download",
            type : "GET",
            data : {
                image : imgData
            }
        });

我不知道从这里可以走哪条路。我看到的大多数例子只涉及控制器方面。我不确定应该如何配置客户端。

1 个答案:

答案 0 :(得分:3)

不是使用AJAX请求调用下载,而是创建指向它的链接。看看是否有帮助。

<g:link action="download" id="1" params="[...]">download</g:link>

你可以将参数传递给你的链接,但是,如果你的params是在你的javascript中创建的,你仍然可以发送它们但是采用不同的方法。

Igorthis

查看此帖子