【问题标题】:Return File from MVC controller using http get使用 http get 从 MVC 控制器返回文件
【发布时间】:2014-11-28 11:56:41
【问题描述】:

我正在调用 MVC 控制器,它使用 XMLHttpRequest 返回一个 FileResult。 由于某种原因,我没有收到下载/保存文件的提示,我确实将文件内容作为获取请求的响应(在网络选项卡中检查)。

我没有文件的url只有contentbytes,所以不能使用window.location

请帮忙。

【问题讨论】:

    标签: asp.net asp.net-mvc asp.net-mvc-3 asp.net-mvc-4 asp.net-ajax


    【解决方案1】:

    不要使用 XMLHttpRequest 打开文件链接,这样做

    【讨论】:

    • 我没有网址,我只有内容字节
    • 没有url,不能调用XMLHttpRequest。放置您的网络标签的屏幕截图
    【解决方案2】:

    在您的控制器操作中返回文件之前,请尝试添加内容处置标头(直接如下,或使用System.Net.Mime.ContentDisposition)。

    Response.AppendHeader("content-disposition", "inline; filename=" + fileName);
    

    也可以看看RFC 6266

    在客户端,调用返回附件的url:

    window.open('..../controller-name/action-that-returns-the-file');
    

    【讨论】:

      猜你喜欢
      • 2015-10-12
      • 2021-07-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-07-18
      • 2022-07-20
      • 1970-01-01
      相关资源
      最近更新 更多