【发布时间】:2013-08-25 02:05:34
【问题描述】:
到目前为止,我们可以使用以下代码 sn-p 获取文件的绝对路径,以便稍后以 readStream 的形式打开:
var base = path.resolve('.');
var file = base + '/data/test.csv';
fs.createReadStream(file)
从 Meteor 0.6.5 开始,基本路径指向 .meteor/local/build/programs/...
还有 Assets API,它不能给我们返回路径,只能给我们读取的文档。但我们需要一个流来处理一些更大的数据文件?
【问题讨论】:
-
嗨 Loomi,您能否澄清一下您的问题 - 新的基本路径造成的问题是什么?
-
@stephan-tual 嗨 Stephan,由于 Meteor 的变化,如果我理解正确,文件会在运行前复制到构建目录。这意味着不可能使用 nodejs 内部手动访问文件。我正在寻找一种方法来引用项目目录中稳定的文件。如果我没看错,Assets API 就会这样做。但它直接传递文件。另一方面,我只需要获取可以打开文件表单的路径,例如/private/something.csv 比 fs.createReadStream.
-
嗨 Loomi,你看过这个包吗:atmosphere.meteor.com/package/fs ?
-
知道基本路径更改为 .meteor/local/build/programs 很有用。帮助我找到了一个我盲目编写但没有完整路径的文件:-)
-
有一个feature request 用于获取资产的绝对路径。