为什么 Content-Disposition 标头在 IE 8 中不起作用?

2023-12-12

我正在尝试将文本文件 (CSV) 流式传输到响应,并且以下代码在 Firefox 3 中完美运行,但是当我使用 IE 时,它看起来想要下载实际的 .aspx 页面,并抱怨该文件内容与文件扩展名或类型不匹配。如果我随后选择下载该文件,它会正确下载 CSV 数据并在 Excel 中打开它。我究竟做错了什么?

    DataTable dt = ExtensionsProvider.ListPrivateCallCostsForCsv(reportFilter.BusinessUnit, reportFilter.StartDate,
                                                             reportFilter.EndDate);
    Response.Clear();
    Response.Buffer = true;
    Response.ContentType = "text/csv";
    Response.AddHeader("Content-Disposition", "filename=" + GetExportFileName()); 
    DataTableHelper.WriteCsv(dt, Response.Output, false);
    Response.End();

Response.AddHeader("Content-Disposition", "filename=" + GetExportFileName());

应该:

Response.AddHeader("Content-Disposition", "attachment;filename=" + GetExportFileName());

没有主线Content-Disposition值,IE 将只使用 URL 的尾部 —something.aspx— 作为文件名。

(以上假设GetExportFileName()返回删除了大部分标点符号的清理文件名。在 IE 中,标头参数中可以包含哪些内容作为标记或带引号的字符串,这是一个令人烦恼的问题;看这个问题详情)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

为什么 Content-Disposition 标头在 IE 8 中不起作用? 的相关文章

  • 将 WebResponse 保存为 txt

    我正在寻找一种与 WebResponse 中的 Request SaveAs 等效的方法 但我找不到它 我想将网络响应的标题和正文存储在 txt 文件中 你知道有什么技术可以实现它吗 没有内置的方法 但您可以简单地使用获取响应流 http
  • 检查Cookie是否存在

    从快速搜索开始堆栈溢出我看到有人建议使用以下方法来检查 cookie 是否存在 HttpContext Current Response Cookies cookie name null 或 在一个Page class this Respo
  • 在docker中使用MySQL数据库设置aspnetcore

    我正在尝试设置一个 docker compose 文件 其中包含 asp net core mysql 数据库和 phpmyadmin 的容器 设置我的 mysql 服务器没有问题 我可以使用 phpmyadmin 访问它 我的 asp n
  • 将 NameValueCollection 绑定到 GridView?

    我应该使用哪种集合来将 NameValuecollection 转换为可绑定到 GridView 直接做的时候没效果 aspx cs 中的代码 private void BindList NameValueCollection nvpLis
  • 限制违反架构 - asp.net MVP

    如果我们在应用程序中定义了层次结构 对于前三层架构 我们如何限制后续开发人员违反规范 例如 在 MVP 不是 ASP NET MVC 架构的情况下 演示者应该始终绑定模型和视图 这有助于编写正确的单元测试程序 然而 我们也遇到过这样的情况
  • 如何在 asp.net 网站中使用 aspnetdb 数据库

    我使用 asp net 3 5 创建了一个网站 现在我使用 Membership API 和 aspnetdb 数据库为其添加了会员支持 我已经在本地机器上完成了所有测试 现在 在将该站点上传到服务器时 需要考虑与 aspnetdb 有关的
  • Microsoft.Extensions.Caching.Redis 选择与 db0 不同的数据库

    一个关于了解使用哪个redis数据库以及如何配置它的问题 我有一个默认值ASP NET Core Web 应用程序和默认配置的本地redis服务器 含15个数据库 通过包管理控制台我已经安装了 Install Package Microso
  • 从表单身份验证中排除页面 - ASP.NET

    我知道有两种方法可以从表单验证中排除页面 通过使用包含需要排除的页面的文件夹中的另一个 web config 文件 或者使用 location 元素
  • 当用户告诉浏览器“刷新”时,是否应该填写 HTTP_REFERER?

    我正在尝试使用引用标头检查作为深度防御 即多种安全技术之一 但请注意仅依赖于任何一种技术 有时 MSIE 似乎不包含刷新时的引荐来源网址 这是预期的行为吗 无论如何 我是否可以检测刷新 以便我知道缺少引荐来源网址是可以的 是的 我知道引荐来
  • 为什么静态方法不能用作 ASMX Web 服务中的 Web 服务操作?

    我只是想了解为什么我不能在 Web 服务中使用静态 Web 方法 为什么会受到限制 有人可以给我对此进行简洁的解释吗 答案是 因为你不能 它不是这样设计的 其设计是 将创建 Web 服务类的实例 然后调用实例方法 我只能猜测微软为什么这样设
  • 如何在 Web 表单中进行 Html.Encode

    我有一个 ASP NET Web 窗体应用程序 有一个带有文本框的页面 用户在其中输入搜索词用于查询数据库 我知道我需要防止 JavaScript 注入攻击 我该怎么做呢 在 MVC 中我会使用Html Encode Web 表单中似乎无法
  • 不支持 EF6 上下文类型“System.Data.Entity.Core.Objects.ObjectContext”

    我有一个使用 Visual Studio 2013 和 ADO NET 实体数据模型 EF6 创建的新项目 现在我必须使用一些动态数据函数 例如访问 MetaTable 对象 所以我添加以下代码 MetaModel model new Me
  • 有没有办法使用 ASP.NET 在用户离开页面时始终运行某些服务器端代码?

    我想知道当用户离开 ASP NET 中的页面时是否有任何方法可以始终运行一些服务器端代码 页面卸载事件不好 因为如果有人单击链接 则不会调用该事件 理想情况下 即使用户关闭浏览器 我也希望代码能够运行 我怀疑我所问的问题是不可能的 但问一下
  • 锚标记 href 中的 eval

    我想要实现的目标是在锚标记的 href 中使用 Eval 作为参数 锚点嵌套在转发器内 为什么我不能使用后面的代码来实现这一点 我尝试了一些事情但没有运气 a href http MyWebsite ActiveUsers ID Inser
  • 家庭自动化图书馆[关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我是一名 C 开发人员 希望将家庭自动化作为一种 爱好 我做了一些研究 但想知道是否有人知道支持 In
  • ASP .NET 按钮事件处理程序不会在第一次单击时触发,而是在回发后第二次单击时触发

    背景 我正在自定义现有的 ASP NET C 应用程序 它有自己的小 框架 和约定 供开发人员在扩展 定制其功能时遵循 我目前正在扩展它的一些管理功能 该框架提供了一个合同来强制执行GetAdministrationInterface 方法
  • 当集合提交回控制器时,未将对象引用设置为对象的实例。错误

    我正在更新多条记录 单击提交按钮后出现错误 这表明控制器收到 NULL 并在第 36 行报告以下错误 下面是我的控制器 视图和模型的代码 你调用的对象是空的 描述 执行当前 Web 请求期间发生未处理的异常 请检查堆栈跟踪 有关该错误及其起
  • 如何获取正在访问 ASP.NET 应用程序的当前用户?

    为了获取系统中当前登录的用户 我使用以下代码 string opl System Security Principal WindowsIdentity GetCurrent Name ToString 我正在开发一个 ASP NET 应用程
  • 如何在整个 ASP .NET MVC 应用程序中需要授权

    我创建的应用程序中 除了启用登录的操作之外的每个操作都应该超出未登录用户的限制 我应该添加 Authorize 每个班级标题前的注释 像这儿 namespace WebApplication2 Controllers Authorize p
  • 如何将带有 IP 地址的连接字符串放入 web.config 文件中?

    我们当前在 web config 文件中使用以下连接字符串 add name DBConnectionString connectionString Data Source ourServer Initial Catalog ourDB P

随机推荐

  • 在整个页面加载之前显示加载栏

    我想在加载整个页面之前显示一个加载栏 目前 我只是使用了一个小的延迟 document ready function page fadeIn 2000 该页面已使用 jQuery 注意 我已经尝试过这个 但它对我不起作用 脚本运行时加载栏
  • Python“for i in”+变量

    我有以下代码 Euler Problem 1 print We are going to solve Project Euler s Problem 1 euler number input What number do you want
  • 如何在Linux上指定时间运行脚本? [关闭]

    Closed 这个问题不符合堆栈溢出指南 目前不接受答案 我有一个包含特定日期和时间的文本文件 我希望能够在该文件中指定的时间运行脚本 你将如何实现这一目标 创建另一个在后台运行的脚本 类似于守护程序 并每秒检查当前时间是否与文件中的时间匹
  • 将电子邮件另存为 MSG 文件,无需使用 Outlook(COM 对象等)或第 3 方软件

    现在 我正在使用 Exchange Web 服务 API 和 PowerShell 从 Exchange 中提取特定电子邮件并将其保存为 EML 文件 这很好用 但是 用户 客户要求电子邮件采用 msg 格式 我见过有两种方法可以做到这一点
  • 录制时拍摄相机屏幕截图 - 就像 Galaxy S3 一样?

    我正在开发一个使用 SurfaceView 进行显示的相机应用程序 我可以截取 SurfaceView 的屏幕截图 并将其保存为位图 使用 getDrawingCache 在包装 SurfaceView 的布局上 还有canvas draw
  • VBA:等待 Bloomberg BDP 通话完成

    我有一个脚本将一些外部数据导入到工作表中 这反过来会影响一些 BDP 公式 最好 我想在复制数据后立即对 BDP 结果进行一些检查 Bloomberg Excel 插件异步更新 如何等待结果然后恢复脚本 似乎只有在 VBA 脚本完成后才会导
  • 为 Nitrogen6x 构建 Qt 5 时出现 libm 重定位错误

    我正在尝试在 Qt 5 上构建氮气6x板由 i MX6Q 供电 我已经安装了Debian 喘息在板上 我正在使用乌班图12 10交叉编译机 配置 Qt 就像一个魅力 但我陷入了 make 步骤 这是我运行的配置脚本 configure v
  • 如何设计一封安全且“自毁”的电子邮件?

    正如大多数人所知 电子邮件非常不安全 即使客户端和发送电子邮件的服务器之间有 SSL 安全连接 消息本身在 Internet 上的节点间跳跃时也将采用明文形式 从而容易被窃听 另一个考虑因素是 发件人可能不希望邮件在一段时间后或在被阅读一次
  • 读取 PDF 文档中的所有书签,并使用书签的页码和标题创建字典

    我尝试使用 Python 和 PyPDF2 包来阅读 PDF 文档 目标是读取pdf中的所有书签 并构建一个以书签页码为键 书签标题为值的字典 互联网上没有太多关于如何实现它的支持 除了this文章 其中发布的代码不起作用 我不是 pyth
  • 无法将我自己的域添加到 google api 通知端点

    我正在尝试使用谷歌推送通知 我已经关注了此处列出的注册过程 简而言之 我的领域已在 https 中验证在 Google 网站管理员工具中 但是 当我尝试添加通知端点在 Google Cloud Console 中 我收到以下错误 You d
  • (git tfs fetch)TF400324:Team Foundation 服务不可用,底层连接已关闭

    我使用 git tfs 已经快 5 年了 然后有一天我在运行时遇到以下错误git tfs fetch TF400324 Team Foundation services are not available from server https
  • 如何在低于 KitKat 的 Android 版本的 Android WebView 中重置代理?

    我使用以下 2 种方法在 Android WebView 中为 Android 版本 ICS 和 JB 设置代理 但我无法重置 删除这两个版本的代理 如何重置 删除通过这些方法设置的代理 For ICS private static boo
  • 使用 Perl 获取 WMI 内存值

    我需要使用WMI收集Windows操作系统的内存数据 从这个意义上说 我开发了一个 Perl 脚本来生成此类数据 但是 我想知道我的方法是否正确以及有哪些替代方案 收集数据的方法旨在尽可能广泛地应用于 Windows 操作系统 如果你不是一
  • 信中信,模式识别

    我想检测这种模式 正如您所看到的 它基本上是一个字母 C 位于另一个字母内部 具有不同的方向 我的模式可以相互包含多个 C 我发布的带有 2 个 C 的模式只是一个示例 我想检测有多少个 C 以及每个 C 的方向 现在我已经成功地检测到了这
  • 如何检索用于编译给定 ELF 可执行文件的 GCC 版本?

    我想检索用于编译给定可执行文件的 GCC 版本 我试过readelf但没有得到信息 有什么想法吗 一般存放在评论区 strings a
  • Vagrant 端口转发不起作用。主机无法访问杯子

    所以我正在使用 vagrant 并尝试将其用作打印服务器 我安装了杯子 内部一切正常 我什至可以快速做一个curl到我的本地主机 631 我的流浪汉中的杯子端口 一切都有 问题是我无法以任何方式从主机尝试访问它 显然我转发了端口并且尝试了多
  • SQL从查询中的数据中选择该数据尚未在数据库中?

    我想在进行 Web 服务调用之前检查数据库中已记录的记录 这是我想象的查询的样子 我只是似乎无法弄清楚语法 SELECT FROM 1 2 3 4 as temp table WHERE temp table id LEFT JOIN ta
  • Objective-C:查找字符串中的数字

    我有一个包含单词和数字的字符串 如何从字符串中提取该数字 NSString str This is my string 1234 我希望能够将 1234 作为 int 去掉 每次我搜索该字符串时 该字符串都会有不同的数字和单词 Ideas
  • JavaScript - 获取图像特定区域的平均颜色

    我需要使用以下命令从图像的矩形区域获取平均颜色JavaScript 我尝试使用tracking js但它不允许指定区域而不是单个像素 如果您需要获取单个像素的平均颜色 而不是矩形区域的颜色 请看一下另一个问题 鼠标悬停时从画布获取像素颜色
  • 为什么 Content-Disposition 标头在 IE 8 中不起作用?

    我正在尝试将文本文件 CSV 流式传输到响应 并且以下代码在 Firefox 3 中完美运行 但是当我使用 IE 时 它看起来想要下载实际的 aspx 页面 并抱怨该文件内容与文件扩展名或类型不匹配 如果我随后选择下载该文件 它会正确下载