无法让浏览器启动 Express 下载

2024-02-02

继从this https://stackoverflow.com/questions/53981780/angular-cannot-get-file-download-from-express-using-res-download?noredirect=1#comment94894474_53981780问题,我无法让浏览器启动 Express 下载。后端代码:

app.get('/download', (req, res) => {
  res.download('./textfile.txt', (err) => {
    if (err) {
      console.log('error: ' + err);
    }   else {
      console.log('success');
    }
  });
})

我已从 .gpx 文件更改为文本文件,以确保它与此无关,并且我尝试使用如下标题,但无济于事:

res.header('Content-Type', 'text/plain')
res.header('Content-Security-Policy', 'upgrade-insecure-requests');

在前端我尝试过:

window.location.href = 'localhost:3000/download';

and:

const filePath = 'localhost:3000/download';
const link = document.createElement('a');
link.href = filePath;
link.download = filePath.substr(filePath.lastIndexOf('/') + 1);
link.click();

and:

const newWindow = window.open('localhost:3000/download', 'download');

并通过 GET 请求导航到后端 URL(根据对我原来问题的响应),但它们都没有在浏览器中启动下载。

我认为这是一个前端问题,因为当我在控制台中双击下载时,它会打开。前端正在获取数据,但浏览器(chrome)没有下载数据。我也尝试了火狐,同样的结果。

有很多类似的问题,但没有一个能帮我解决这个问题。


您的代码中的问题是您没有将正确的网址传递给window.open。您需要包括http://

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

无法让浏览器启动 Express 下载 的相关文章

随机推荐

  • 对查询集进行排序的好方法? - 姜戈

    我想做的是 获得得分最高的 30 位作者 Author objects order by score 30 作者按以下顺序排列last name 有什么建议么 关于什么 import operator auths Author object
  • WooCommerce:访客结帐不起作用

    我一直在尝试弄清楚如何使我的支持访客结帐的网站正常运行 但到目前为止尚未成功 我激活了以下 WooCommerce 设置 启用访客结账 在 结账 页面启用注册 通常 用户应该能够在不创建帐户的情况下结账 但如果愿意 也可以选择创建帐户 但如
  • 使用 Steamworks 获取 Steam 游戏的所有评论?

    目前 我正在尝试使用 Steamworks 文档中描述的方法获取特定游戏的所有 Steam 评论 https partner steamgames com doc store getreviews https partner steamga
  • 关闭下载栏

    我正在使用 Java 和 Selenium 编写测试 在我的测试中 我下载了一个文件 但随后需要单击 chrome 浏览器页面底部显示的下载栏下方的按钮 我搜索了很多 但唯一的解决方案是here https stackoverflow co
  • to_json 如果字段为黑色则返回 nil,ios 无法解释 ror 中的 null

    如何将 to json 输出中的字段值从 null 更改为 目前它返回 name priya mobile null 相反我想要 name priya mobile or name priya mobile NA 请建议 要添加到 phil
  • 在 Swift 中是否有办法知道哪个对象被刷了?

    我想传递发件人redBox到函数leftSwipeFunc 我不知道如何传递一个不是的参数UISwipeGestureREcognizer 如果您知道答案 请帮助我 let swipeLeft UISwipeGestureRecognize
  • 如何传递选择参数来调用詹金斯管道内的作业

    我怎样才能通过choice parameters在 a 内部调用时用于下游作业stage在詹金斯管道中 我尝试了以下解决方案 但没有一个有效 stage build job steps script build job test param
  • GraalVM - 在类路径上找不到语言和多语言实现

    我正在尝试在项目中使用 GraalVM 来添加简单的脚本功能 我使用 Maven 进行依赖项管理来加载 Graal 的基本依赖项 这是我的 pom xml
  • 更改 Sublime Text 2 中的键盘快捷键

    如何将当前使用多个光标选择所有的键更改为 CMD G 键盘快捷键在 Sublime Text 2 中被称为键绑定 有文档here http docs sublimetext info en latest customization key
  • 从java程序运行jar文件

    我正在尝试从另一个 Java 程序执行 jar 文件 我正在使用以下代码 try Runtime runtime Runtime getRuntime runtime exec path upto jar catch Exception e
  • 哪个适合linux? GNU make、cmake、codeblocks、qmake

    在我面前有一些不同的技术 我对它们感到困惑 GNU make CMAKE Qmake Code blocks 方法 Code Blocks uses a custom build system which stores its inform
  • Visual Studio 2017 xaml 设计器不可用

    使用 Visual Studio Professional 2017 版本 15 2 26430 16 当我打开我开发的桌面 UI 的 xaml 文件时 我无法再看到 xaml 设计器 我只能看到原始 xaml 代码 这是新行为 可能是由于
  • JFrame 上的所有组件均未显示

    我正在创建一个刽子手游戏 想要在框架上有 3 个不同的组件 绞刑架的图片 试图猜测的单词以及字母的按钮 当我尝试将这些组件添加到 JFrame 时 字符被添加到我也想要它们 但是这个词显示在左侧 而 HangmanGallows 扩展 JP
  • MATLAB:在黑白图像上绘制一条线

    如果已知起始坐标和结束坐标 在 MATLAB 中在黑白 二进制 图像上绘制线条的最佳方法是什么 请注意 我并不是想添加注释行 我希望这条线成为图像的一部分 您可能想看看我的答案 https stackoverflow com a 19413
  • 如何确保 CSS :hover 应用于动态添加的元素

    我有一个脚本 当您将鼠标悬停在缩略图上时 它会在缩略图上动态添加完整图像 我还为完整图像提供了 CSS hover 样式 以使它们扩展到更大的宽度 通常它们被限制为缩略图的尺寸 如果图像加载速度很快或被缓存 这种方法效果很好 但如果完整图像
  • 导致 HttpHostConnectException 的原因是什么?

    我在搜索我的网站时具有自动完成 提前输入功能 我发现有时他们是与之相关的例外 我们正在使用代理服务器 org apache http conn HttpHostConnectException Connection to http prox
  • MVC4 HTML TextBoxFor 修改 ViewModel 后不工作

    我有一个我真的不明白的问题 我有一个非常简单的模型 其中有一个列表作为公共成员 每当我的控制器在回发时从模型中删除元素时 TextBoxFor HTML 帮助程序似乎不会接受更改 这些助手似乎正在缓存一些东西 但我无法确定它 演示 重现可以
  • Glassfish vhost 仅提供静态内容。禁用会话如何?

    我在服务器中有一个文件夹 其中包含所有图像 静态文件等 它是我的应用程序的存储 我需要在http 主机 8080 存储 http host 8080 storage 语境 此时 我在应用程序状态的应用程序根目录上安装了一个名为 存储 的符号
  • 在以下字符串聚合中寻找与 .groupby 相反的 pandas“ungroup by”操作?

    假设我们采用 pandas 数据框 name age family 0 john 1 1 1 jason 36 1 2 jane 32 1 3 jack 26 2 4 james 30 2 然后做一个groupby group df df
  • 无法让浏览器启动 Express 下载

    继从this https stackoverflow com questions 53981780 angular cannot get file download from express using res download nored