gpt4 book ai didi

javascript - 在 node.js 中从何处以及如何提供文件

转载 作者:太空宇宙 更新时间:2023-11-04 02:32:20 25 4
gpt4 key购买 nike

我是 node.js/express.js 的新手,我正在阅读一些教程。我很困惑,因为我习惯了简单的 apache 逻辑,node.js/express.js 逻辑让我困惑。请帮助我。

This教程使用默认的快速路由从数据库添加/获取数据。但是,在名为“第 2 部分 – OK,FINE,让我们做“HELLO,WORLD!”的部分,编辑 ...\ROUTES\INDEX.JS 文件以仅添加一个简单的 html 页面。这是为什么?

  1. 我可以只使用 public 文件夹来提供我的文件并使用相同的 URL 进行访问吗?

  2. 如果我有大约 50 个文件,我必须向我的 ...\ROUTES\INDEX.JS 添加 50 个类似的函数,以便我可以为它们提供服务?即使是最简单的静态文件?

  3. 我可以将所有文件放入 public 文件夹中,然后编辑 app.js...\ROUTES\INDEX.JS 吗?

我还阅读了 Don Nguyen 所著的 Jump Start Node.js 一书的第一章。它不编辑路由,只是向 app.js 添加方法,并实现新模块(名为 dbuser)以将用户添加到数据库。这还为简单的 form.html 文件的 app.js 添加了一个新的 get 函数。

  1. 再说一遍,为什么我可以使用 public 文件夹,然后编辑 app.js 并创建自己的模块?

  2. 再说一遍,如果我有大约 50 个文件,我必须向我的 app.js 添加 50 个类似的函数,以便我可以为它们提供服务?即使是最简单的静态文件?

    最后,

  3. 这两种方法有什么区别?在什么情况下我使用它们?

  4. 哪一种是最佳实践?

非常感谢

最佳答案

要将名为“public”的文件夹作为静态文件提供:

app.use(express.static(__dirname + '/public'));

教程没有将他们的“简单”索引页面放入公共(public)的原因是他们的“简单”页面不是静态的。他们将数据 { title: 'Express' } 传递到动态页面。

如果标题“Express”始终是静态的,那么您可以从 public 提供它。然而,为了本教程的目的,我们假设他们可能会动态地将标题从“Express”更改为其他内容。

关于javascript - 在 node.js 中从何处以及如何提供文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25572068/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com