【问题标题】:Linking a file for download in Node - Javascript, EJS在 Node 中链接文件以供下载 - Javascript、EJS
【发布时间】:2018-09-19 11:29:19
【问题描述】:

我试图让我的一个 EJS 页面有一个按钮来从我的 Node.js webapp 下载文件。我正在使用 Node.js、Express、Passport 等...目前,当我点击我拥有的链接时,它会链接到一个页面,上面写着 Cannot GET /public/files/PRA.xlsx

这是我的链接代码:

<a href="/public/files/PRA.xlsx" download>Download PRA File</a>

在这里你可以看到我的应用程序的文件结构。

任何帮助或提示将不胜感激。

【问题讨论】:

    标签: javascript html node.js express ejs


    【解决方案1】:

    试试:&lt;a href="/files/PRA.xlsx" download&gt;Download PRA File&lt;/a&gt;

    如果您为 express 设置了静态中间件,它将挂载您指定的文件夹作为可以提供文件的位置。

    例子:

    app.use(express.static('public'))
    

    将提供位于public 文件夹中的所有文件。如果公用文件夹有类似:image.png 的文件,您将能够从localhost:3000/image.png 访问它。

    如果您想从localhost:3000/public/image.png 提供该图像,您可以执行以下操作:

    app.use('/public', express.static('public'))
    

    在 express 文档中有更多相关信息。 https://expressjs.com/en/starter/static-files.html

    【讨论】:

    • 谢谢!我只为我的图像文件夹链接了我的中间件,所以它没有拾取文件夹。
    猜你喜欢
    • 2012-01-08
    • 2013-08-22
    • 1970-01-01
    • 2012-05-19
    • 1970-01-01
    • 1970-01-01
    • 2011-12-24
    • 1970-01-01
    • 2019-04-15
    相关资源
    最近更新 更多