【问题标题】:nodejs 5500 port API get connect refusednodejs 5500端口API被拒绝连接
【发布时间】:2022-01-25 11:49:07
【问题描述】:

使用fastify构建一些nodejs后端API,这是我的部分代码sn-p:

fastify.get('/', async (request, reply) => {
        return { data: 'ok...' }
})

在我的Tencent Clound Server上部署它

安装一些相关的依赖,并使用pm2 保持我的应用程序在线。使用 curl 正确测试我的 API:

curl http://localhost:5500/

{"data":"ok..."}

但是当我尝试使用公共IP地址请求我的测试api时:http://1.xx.xx.xx:5500/,但它提醒我:连接被拒绝。

我尝试使用 curl 通过 127.0.0.1 测试我的 API,得到相同的错误:

curl http://127.0.0.1:5500/
//  connect refused

PS:

我已禁用防火墙:

并且我的云服务器上的 5050 端口是开放的:

【问题讨论】:

    标签: node.js linux


    【解决方案1】:

    你应该在地址 0.0.0.0 设置监听

    fastify.listen(5500, '0.0.0.0', function (err, address) {
      if (err) {
        fastify.log.error(err)
        process.exit(1)
      }
      fastify.log.info(`server listening on ${address}`)
    })
    

    Link 备注

    以上示例,以及本文档后续示例,默认 只收听 localhost 127.0.0.1 接口。听 所有可用的 IPv4 接口 该示例应修改为监听 在 0.0.0.0 上像这样:

    fastify.listen(3000, '0.0.0.0', function (err, address) {
      if (err) {
        fastify.log.error(err)
        process.exit(1)
      }
      fastify.log.info(`server listening on ${address}`)
    })
    

    【讨论】:

      猜你喜欢
      • 2023-04-01
      • 1970-01-01
      • 1970-01-01
      • 2021-04-04
      • 1970-01-01
      • 2019-05-16
      • 2021-01-18
      • 2021-08-03
      • 1970-01-01
      相关资源
      最近更新 更多