把本地 API 发布到公网进行联调
约 1433 字大约 5 分钟
很多开发联调问题,不是代码本身有多复杂,而是别人的环境根本访问不到你的本地接口。
这篇教程只解决一个问题:
把你本地正在运行的 API,通过 Netunnel 暴露成一个公网地址,让前端、测试或第三方服务可以直接访问。
适合什么场景
这篇教程最适合下面这些情况:
- 前端需要调你的本地接口
- 测试需要验证还没部署到测试环境的接口
- 第三方平台需要访问你的回调接口
- 你想先在本地改完再给别人联调,不想先部署服务器
如果你只是想先跑通一次体验,也同样适合先用这篇教程入门。
你会得到什么
完成后,你应该拿到:
- 一个本地正在运行的 API
- 一个通过
Netunnel创建成功的HTTP隧道 - 一个可以被外部访问的公网地址
- 一次完整的本地 API 联调路径
开始前准备
开始前请先确认:
- 你已经安装并打开
Netunnel客户端 - 你已经能够登录客户端
- 你有一台可用的在线设备
- 你的本地 API 已经启动
例如,你的接口可能运行在:
http://127.0.0.1:3000http://127.0.0.1:8080
先在自己电脑浏览器或接口工具里确认它能访问成功,再继续下一步。
为什么联调总是卡住
本地 API 联调常见的问题不是“接口没写好”,而是:
- 你的接口只在你自己电脑上能访问
- 前端、测试或第三方服务拿不到公网地址
- 为了临时联调去部署一套服务器,成本太高
这时候,最短路径不是先折腾部署,而是先把本地接口发布到公网。
第一步:确认本地 API 可以正常访问
这一步很重要。
在创建隧道之前,先确认你的本地接口本身是好的。
例如:
- 打开浏览器访问本地接口地址
- 或者用 Postman、Apifox、curl 等工具请求一次
- 确认接口返回正常
如果你本地接口都访问不了,后面就算创建了隧道,公网地址也不会正常工作。
第二步:在 Netunnel 中创建 HTTP 隧道
进入 Netunnel 客户端后,按下面思路操作:
- 选择一台在线设备
- 创建一个新的隧道
- 隧道类型选择
HTTP - 填写你的本地 API 地址或端口
- 提交创建
如果你的 API 运行在 127.0.0.1:8080,那这里就应该填写对应的本地服务地址,而不是随便填一个公网地址。
这一类场景,优先使用 HTTP 隧道,不建议第一次就直接用 TCP。
第三步:拿到公网地址
隧道创建成功后,客户端会给你一个公网访问地址。
这个地址就是别人之后访问你本地 API 的入口。
你现在可以把它给:
- 前端同事
- 测试同学
- 第三方平台
- 其他需要联调的人
如果接口里原本写的是本地地址,例如 http://127.0.0.1:8080/api/user/list,现在就应该切换成 Netunnel 提供的公网地址。
第四步:先自己验证一次
不要急着发给别人,先自己验证。
建议你这样做:
- 复制
Netunnel给出的公网地址 - 用浏览器、Postman 或 Apifox 请求一次
- 确认能拿到和本地一致的返回结果
更稳妥一点的话,可以再用另一台设备或手机流量测试一次。
真正的成功标准不是“隧道创建成功”,而是“公网地址真的能调通接口”。
第五步:把地址发给联调方
当你验证通过后,就可以把公网地址发给需要联调的人。
对方通常不需要知道你本地是怎么跑起来的,他只需要知道:
- 访问哪个地址
- 调哪个路径
- 用什么请求方式
- 需要什么参数
这样,你就能在本地继续开发,同时让别人直接联调你的接口。
常见问题
本地接口能访问,公网地址打不开
优先检查:
- 隧道类型是否选成了
HTTP - 填写的本地地址或端口是否正确
- 当前选择的设备是否在线
- 本地 API 是否仍然保持运行
隧道创建成功,但返回结果不对
优先检查:
- 你请求的公网路径是否和本地接口路径一致
- 本地 API 是否存在鉴权、跨域、环境变量等限制
- 你测试的是不是正确的接口方法和参数
应该用 HTTP 还是 TCP
如果你发布的是:
- Web 页面
- REST API
- 本地回调接口
优先用 HTTP。
只有当你映射的是原始 TCP 服务,例如远程桌面、数据库或其他 TCP 协议服务时,再考虑 TCP。
什么时候最适合用这种方式
这种方式尤其适合:
- 临时联调
- 本地开发阶段验证
- 还不想部署测试环境时
- 只需要快速给别人一个公网地址时
如果你只是为了让别人临时访问你本地 API,这通常比先部署一套服务更直接。
