gpt4 book ai didi

java - grails - 如何强制下载带有扩展名的文件

转载 作者:塔克拉玛干 更新时间:2023-11-02 19:40:22 24 4
gpt4 key购买 nike

我有以下代码

    def fileDoc = new File(document.documentLocation);
if(fileDoc.exists()){
// force download
def fileName = fileDoc.getName();
response.setContentType("application/octet-stream")
response.setHeader "Content-disposition", "attachment; filename=${fileName}" ;
response.outputStream << fileDoc.newInputStream();
response.outputStream.flush();
return true;
}

documentLocation 包含字符串,例如“c:\mydoc\contains_some_long_string_with_id.pdf”。

我希望用户下载文件而不是从浏览器查看它。它在我可以下载的 chrome 上运行良好,文件将显示为“另存为”“contains_some_long_string_with_id.pdf”

但在 firefox(最新的)中 .. 文件名被削弱为“contains_some_long”(末尾没有 pdf 扩展名)。

如何解决这个问题?该文件可以是 csv、pdf、文本、html、zip、pdf 或其他文件格式。

谢谢

最佳答案

内容类型字符串可能需要是您正在下载的文档的 MIME 类型。

例如。对于 PDF,它可能应该是“application/pdf”

关于java - grails - 如何强制下载带有扩展名的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3722983/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com