You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过公网共享基于PostGraphile构建的PostgreSQL GraphQL API

让PostGraphile GraphQL API暴露到公网的解决方法

1. 修改PostGraphile的监听地址

PostGraphile默认仅绑定localhost(127.0.0.1),导致只有本地能访问。你需要修改启动命令,让它监听所有网络接口(0.0.0.0),添加--host 0.0.0.0参数:

npx postgraphile -c postgres://postgres:123456@localhost:5432/mydb --watch --enhance-graphiql --dynamic-json --cors --host 0.0.0.0

启动后,外部客户端可以通过你的公网IP+5000端口访问API,地址格式为http://[你的公网IP]:5000/graphql。

2. 配置网络权限与端口转发

  • 本地防火墙开放端口:确保你的电脑防火墙允许外部访问5000端口。Windows可在防火墙高级设置中添加入站规则;Linux可执行ufw allow 5000(基于ufw防火墙)。
  • 路由器端口转发:如果你的设备处于局域网(如家庭网络),需登录路由器后台,设置端口转发规则——将路由器的5000端口映射到你电脑的5000端口。完成后,外部客户端通过路由器的公网IP+5000端口即可访问。

3. 临时公网穿透(测试场景)

若无固定公网IP或不想配置路由器,可使用本地穿透工具快速生成公网访问地址(仅适合测试,不建议生产环境使用):

  • 安装穿透工具(如ngrok)后,执行命令:ngrok http 5000
  • 工具会生成一个临时公网域名(如https://xxxx.ngrok.io),外部客户端可通过https://xxxx.ngrok.io/graphql访问你的API。

注意事项

  • 生产环境暴露API时,务必添加身份认证、权限控制等安全机制,避免无授权访问。
  • 临时穿透工具的域名是动态变化的,仅适合开发测试阶段使用。

内容的提问来源于stack exchange,提问作者Thiệu Trần Quốc

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.26 17:19:49