【发布时间】:2021-02-27 17:00:42
【问题描述】:
我创建了一个小型 Node.js 应用程序,它还调用了一个 python 脚本。
在节点服务器和 python 脚本中,都存在硬编码路径。
以 Python 为例:
myStoreDir = '/home/user1/Desktop/app/dataContainer/'
在节点的情况下:
var pathAndFileName = '/home/user1/Desktop/app/dataContainer/'+fileName;
当然,这个小应用程序可以在我的系统中完美运行。但是当我将代码提供给同事在 docker 容器中运行应用程序时,他显然遇到了问题,因为这些路径在他的系统上不存在。
有没有办法在 node.js 和 python 中以不同的方式声明这些路径。 这样任何人都可以运行它?
请记住,文件结构/app/dataContainer 肯定会存在,因为这是git pull 的结果。
有没有办法解决这个问题,所以/app之前的路径,固定在git拉目录的位置?
【问题讨论】:
-
相对路径。操作系统将查找与当前工作目录相关的内容;在
app/dataContainer目录中启动脚本,您可以完全删除硬编码的路径。 -
我在 /.../app/ 目录下运行 node.js 服务器。 node.js 调用的 python 脚本位于 /.../app/dataContainer 中。我必须修改 routes.js 和 python 脚本。究竟需要改变什么?
-
你有
/long/complex/path/to/app/dataContainer/的地方替换为dataContainer/ -
谢谢! python 和 node.js 的 javascript 文件都是一样的方法吗?
-
相对路径是一种操作系统工具,所以是的,任何使用路径的东西。
标签: python node.js python-3.x path filepath