如果我做一个
res.sendfile('public/index1.html');
然后我收到服务器控制台警告
表达已弃用
res.sendfile
:res.sendFile
改为使用
但它在客户端工作正常。
但是当我将其更改为
res.sendFile('public/index1.html');
我得到一个错误
TypeError:路径必须是绝对路径或将根目录指定为
res.sendFile
并且index1.html
不呈现。
我无法弄清楚绝对路径是什么。我的public
目录与处于同一级别server.js
。我正在res.sendFile
使用server.js
。我也宣布app.use(express.static(path.join(__dirname, 'public')));
添加我的目录结构:
/Users/sj/test/
....app/
........models/
....public/
........index1.html
在此处指定的绝对路径是什么?
我正在使用Express4.x。
该express.static
中间件是独立的res.sendFile
,所以用你的绝对路径初始化它public
目录不会做任何事情res.sendFile
。您需要直接使用绝对路径res.sendFile
。有两种简单的方法可以做到这一点:
res.sendFile(path.join(__dirname, '../public', 'index1.html'));
res.sendFile('index1.html', { root: path.join(__dirname, '../public') });
注意:
__dirname
返回当前正在执行的脚本所在的目录。在您的情况下,它看起来像server.js
在中app/
。因此,要进入public
,您首先需要退出一个级别:../public/index1.html
。
注意:
path
是一个内置模块,需要require
d才能使上述代码起作用:var path = require('path');
问题内容: [添加]所以我的下一个问题是,当我尝试添加新的依赖项时(npm install –save socket.io)。JSON文件也有效。我收到此错误:无法解析json 因此,我一直在尝试找出为什么此错误一直在返回。所有文件(HTML,JSON,JS)都在我桌面上的同一文件夹内。我正在使用node.js和socket.io 这是我的JS文件: 这是返回的内容: 问题答案: 错误非常明显,您
问题内容: 如果使用绝对路径,则无法将整个目录移动到新位置。如果使用相对路径,则无法将单个文件移动到新位置。 这里有什么解决方案?您是否设置了一个包含根路径并从那里开始的配置文件?还是您有类似的规则:永不移动文件? 我在某些项目中看到人们使用dirname( FILE )。我的意思是,为什么不简单地将其删除,因为目录名还是相对的(取决于文件所在的位置)? 问题答案: 您应该使用一个配置文件,该配置
位置路径指定XML文档中节点的位置。路径可以是绝对路径或相对路径。 如果位置路径以根节点或开头,则它是绝对路径。 以下是使用绝对路径定位元素的示例中的一小部分。 - 选择类根节点中的节点。 - 在类根节点中选择节点的名称。 示例 在这个例子中,我们创建了一个示例XML文档students.xml,及其样式表文档students.xsl,它使用了XPath表达式。 以下是使用的示例XML,文件:st
主要内容:什么是当前工作目录,什么是绝对路径与相对路径,Python处理绝对路径和相对路径在介绍绝对路径和相对路径之前,先要了解一下什么是当前工作目录。 什么是当前工作目录 每个运行在计算机上的程序,都有一个“当前工作目录”(或 cwd)。所有没有从根文件夹开始的文件名或路径,都假定在当前工作目录下。 注意,虽然文件夹是目录的更新的名称,但当前工作目录(或当前目录)是标准术语,没有当前工作文件夹这种说法。 在 Python 中,利用 os.getcwd() 函数可以取得当前工作路径的字
在 Linux 中,简单的理解一个文件的路径,指的就是该文件存放的位置,例如,在《 Linux文件系统的层次结构》中提到的 /home/cat 就表示的是 cat 文件所存放的位置。只要我们告诉 Linux 系统某个文件存放的准确位置,那么它就可以找到这个文件。 指明一个文件存放的位置,有 2 种方法,分别是使用 绝对路径和 相对路径。 我们知道,Linux 系统中所有的文件(目录)都被组织成以根
问题内容: 我正在编写一个程序,其中的一个组件必须能够采用给定的路径(例如或)和基于该位置的相对路径(例如或或)并产生绝对路径由相对路径暗示。考虑以下目录树。 该文件包含一个链接,如。该计划获得通过或,并将其与结合来获得。 同样,文件具有链接,程序需要从该链接返回。有合理的方法做到这一点吗? 谢谢。:) 编辑: 谢谢斯蒂芬·温伯格!对于未来的每个人,这是我使用的代码。 问题答案: 在与使用时应该做