【问题标题】:how to run node.js app from cmd with some predefined port in Windows如何在 Windows 中使用某些预定义端口从 cmd 运行 node.js 应用程序
【发布时间】:2018-10-13 13:52:26
【问题描述】:

是否存在使用直接指定端口运行我的 node.js 代码的命令? node server.js port=7777 之类的东西?

我的 server.js 代码如下所示

http.createServer(function (req, res) {
  if (mount(req, res)) return;
}).listen(process.env.PORT || 80);

【问题讨论】:

  • 如果无法更改代码,只需从命令行输入set PORT=7777,然后启动节点。

标签: windows node.js cmd


【解决方案1】:

根据server.js 包含的内容,您应该可以这样做。

至少你应该阅读port(你可以使用https://github.com/substack/node-optimist

var argv = require('optimist').argv;
console.log(argv.port);

// use it like this
$ node server.js -port 7777

然后在您的服务器上收听(这取决于您使用的库)。

像这样运行服务器

export PORT=7777; node server.js

【讨论】:

  • 我用 server.js 代码更新了这个问题。是否可以在不修改 server.js 内容的情况下做到这一点?
  • @AlbertoZaccagni node server.js -port 8000 这个拯救了我的一天。非常感谢:)
  • 非常感谢。我真的很喜欢这种方法。我确实在 Windows 下摆弄了“乐观”模块。根据我的设置,您的示例中有错误。命令行应该是node server.js --port 7777,您应该使用npm install optimistic 安装模块。现在我可以在 node.exe 程序的命令行中传递端口。但是,我不知道如何调试这部分。在 VS Code 中,我只能调试除正在侦听服务器的部分之外的所有其他部分。有什么反馈吗?
  • @tarekahf 我建议你打开一个新问题引用这个作为参考
【解决方案2】:

对 Alberto 的回答进行了简单的补充。在 Windows 机器上,cmd 中没有 export 命令,请改用 set。 那么整个脚本会是这样的:

set PORT=7777
node server.js

请注意,PowerShell 中的语法略有不同:

$env:PORT=7777
node server.js

【讨论】:

    【解决方案3】:

    在 ubuntu 上我只是这样做

    PORT=7777 node .
    

    在命令行中,不需要设置或导出。

    【讨论】:

    • 这适用于 Windows Git 安装附带的 Windows MINGW64 终端。谢谢!我使用了“PORT=7777 npm run dev”,效果很好!
    【解决方案4】:

    对于 Linux 出口端口=5000; 节点索引.js

    适用于窗户 设置端口=5000; 节点索引.js

    在powerShell的情况下

    设置 $env:PORT=5000; 节点索引.js

    常量端口 = process.env.PORT || 3000; app.listen(port,()=>{console.log(Listening on port ${port})})

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-03-02
      • 2021-02-16
      • 1970-01-01
      • 1970-01-01
      • 2018-01-12
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多