javascript - 冷融合下载文件

标签 javascript ajax coldfusion cfml coldfusion-11

我想通过调用 Coldfusion 函数的 ajax get 请求下载文件,但问题是在开发工具的“网络”选项卡中我可以“看到”内容,但它不下载它。

这是我的 Coldfusion 函数,它存储在 cfc 中:

<cffunction name="download" access="remote" output="true">
    <cfset file_name = "Test.xlsx">
    <cfheader name='Content-Disposition' value='attachment; filename=#file_name#' charset='utf-8'> 
    <cfcontent type="application/msexcel" file="#file_name#" deletefile="false">
</cffunction>

这是我的 ajax 调用:

<script>
        $.ajax({
            method: "GET",
            url: "ses/dev.cfc",
            data: {
                method: 'download'
            },
            cache: false,
            success: function(data) {
                console.log("Downloaded");
            },
            error: 'Not downloaded'
        });
    </script>

这是我的结果: /image/Q8qNy.jpg

最佳答案

我认为您应该在 Ajax 中删除下载功能,并将其移动到不同的进程...也许可以在不同的 URL 上调用它,如下所示:

http://websiteurl.com/download.php?file=xxxxx&sec_string=xxxxxx

我希望这是有道理的:)

关于javascript - 冷融合下载文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42707062/

相关文章:

Javascript 表单验证 + ajax 提交不起作用

c# - 如何在asp.net fileupload中上传后显示图片

javascript - 我如何克隆并删除每一行中的一行

javascript - JQuery 选择动态变量

javascript - 如何在一张图片中找到另一张图片? Node .js

loops - 按 CSV 上传 Coldfusion 中的列数循环

mysql - 如何从其他 ColdFusion 文件获取值

javascript - Django Tastypie YUI 模型相关的foreignKey id而不是resource_uri

javascript - 通过自动建议进行 Onclick 更新

excel - 使用 Coldfusion 9 将换行符插入 Excel 单元格