使用Node.js我得到,“错误:EISDIR,阅读”

时间:2013-12-06 06:03:17

标签: node.js

当我尝试打开我得到的文件时,

events.js:72
        throw er; // Unhandled 'error' event
Error: EISDIR, read

4 个答案:

答案 0 :(得分:76)

这个错误很简单,

cd /tmp
mkdir dir
node -e "var fs = require('fs'); fs.createReadStream( 'dir' );"

EISDIR 表示操作的目标实际上是一个目录,但目标的预期文件类型是其他而不是目录。

答案 1 :(得分:4)

刚刚遇到此错误,在我的情况下,它是因为之前使用bower link链接到本地​​源,然后在目录中创建符号链接。 一旦我bower unlink编辑了所有组件,它就会按预期再次运行。

希望这可能有助于某人。

答案 2 :(得分:3)

当您尝试打开文件时出现

EISDIR错误,但给出的路径是目录。

您可以通过检查是否是目录来解决此问题 -

if (fs.lstatSync(filePath).isDirectory()) {
  return;
}

有关详情,请参阅文档here

答案 3 :(得分:0)

通过运行类似的命令,您可能会幸运地检查到此类错误代码:

grep EISDIR -r /usr/include

执行此操作时,我得到一行内容:

/usr/include/uv.h:  XX(EISDIR, "illegal operation on a directory")