gpt4 book ai didi

javascript - 从不同的目录运行 Node 应用程序使静态文件夹变得有趣

转载 作者:行者123 更新时间:2023-11-30 15:51:26 24 4
gpt4 key购买 nike

这是我的项目结构的要点:

  • /
    • Node 模块/
    • 公共(public)/
      • CSS/
        • main.css
    • 服务器/
      • 浏览量/
      • 应用程序.js
    • package.json

这是我的 super 简单的 app.js:

var express = require('express');
var app = express();

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


app.listen(3000, function(){
console.log('live at http://localhost:3000');
});

现在,当我在根目录时,运行node server.app.js 并加载url http://localhost:3000/public/css/main.css 一切都按预期完美加载。

但是,当我在 server/目录中运行 node app.js 并加载相同的 url 时,我收到错误消息 Cannot GET/public/css/main.css.

有没有办法解决这个问题,以便我可以从任何目录运行我的项目?

最佳答案

替换这个:

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

用这个:

var path = require('path');

app.use('/public', express.static(path.join(__dirname, '../public')));

第一个片段的问题是 'public' 被解释为相对于当前工作目录。对于第二个片段,它是相对于 app.js 的位置的——它不依赖于您当前的工作目录。

关于javascript - 从不同的目录运行 Node 应用程序使静态文件夹变得有趣,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39261842/

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