dirname vs. 为 sendFile() Node.js提供根路径
dirname vs. providing root path for sendFile() Node.js
我正在遵循有关 MEAN 堆栈的教程,但它有点旧,并且作者使用的一些方法已被弃用。他使用 sendfile(),我将其更改为 sendFile(),因为服务器向我发出有关 sendfile() 被弃用的警告。新的 sendFile() 说它采用绝对路径而不是相对路径。我有一个有效的端点:
app.get('/', function (req, res){
res.sendFile(__dirname + 'layouts/posts.html')
})
在服务器中,但现在我们将所有端点分解为控制器。当前(相关)文件结构如下所示:
/控制器/静态.js
/layouts/posts.html
本教程说/controllers 中的端点应该看起来像这样:
var router = require('express').Router()
router.get('/', function (req, res){
res.sendFile('layouts/posts.html')
})
module.exports = router
在服务器中使用此相应的代码:
app.use(require('./controllers/static'))
使用('layouts/post.html'),我收到错误"路径必须是绝对路径或指定根到 res.sendFile",当我尝试从服务器根目录添加__dirname或路径时,我得到一个 ENOENT ...../controllers/somethingItried/posts.html。有人可以解释解决此问题的最佳方法以及服务器在这里考虑的绝对路径吗?我尝试从根创建路径失败了:
../layouts/posts.html
以及此页面的建议:
node.js 类型错误:路径必须是绝对的或指定根目录到 res.sendFile [解析 JSON 失败]
将根路径添加到下一个参数"选项"喜欢:
res.sendFile('layouts/posts.html', {root: __dirname});
相关文章:
- 如何在d3.js中返回路径的y坐标
- JS文件的路径正在消失
- D3.js剪辑路径截断了我的图的边缘
- googlemarkercluster.js库的备用源路径是什么
- 最短路径算法js错误
- 如何在three.js中加载指定文件内容而非路径的三维模型
- 如何为JS模块添加包含路径
- 调用后端、多路径变量、Ext Js
- 纸张.js路径数据动画在帧和鼠标拖动
- 要求无法识别 JS 路径
- 传单.js路径点击移动设备
- 节点中的 Web 服务器.js路径中的错误
- 为什么纸张.js路径创建在 iOS 设备上不起作用
- 有没有一种方法可以在express.js路径中编写html(或jade等)
- 使用当前的require.js路径获取jquery load/get
- _references.js路径不合法
- Raphael-使用transform缩放js路径-意想不到的结果
- D3.js "路径"无效值;属性……“但图表仍在更新
- Gulp没有给index.html添加正确的css/js路径
- 如何使D3.js路径生成器追加两点