README_CN.md 3.0 KB

localtunnel

localtunnel 可以让你的本地服务器暴露到公网,方便测试和分享! 无需配置 DNS 或部署即可让其他人测试你的更改。

非常适合用于:

  • 使用 browserling 等浏览器测试工具
  • 需要公网回调 URL 的外部 API 服务(如 twilio)等场景

快速开始

npx localtunnel --port 8000

安装方式

全局安装

npm install -g localtunnel

作为项目依赖安装2222

yarn add localtunnel
或
npm install localtunnel

命令行使用

当全局安装 localtunnel 后,可以直接使用 lt 命令启动隧道:

lt --port 8000

就这么简单! 它会连接到隧道服务器,建立隧道,并告诉你用于测试的 URL。这个 URL 在会话期间会一直有效,你可以分享给其他人一起测试。

即使你重启本地服务器, lt 也足够智能,可以检测到并重新连接。

常用参数

使用 lt --help 查看所有参数,以下是一些常用参数:

  • --subdomain: 请求指定的子域名(默认是随机字符)
  • --local-host: 代理到 localhost 以外的主机名
  • --port: 本地服务端口号(必填)
  • --open: 在浏览器中打开隧道 URL

也可以通过环境变量指定参数,例如:

export LT_PORT=8000
lt

API 使用

localtunnel 客户端也提供了 API 接口(用于测试集成、自动化等):

const localtunnel = require("localtunnel");
(async () => {
  const tunnel = await localtunnel({ port: 3000 });
  // 分配的公网隧道 URL
  // 例如: https://abcdefgjhij.localtunnel.me
  console.log(tunnel.url);
  tunnel.on("close", () => {
    // 隧道关闭
  });
})();

选项

  • port (必填): 要暴露的本地端口号
  • subdomain: 请求特定的子域名(注意:取决于可用性可能无法获得指定名称)
  • host: 上游代理服务器 URL,默认为 https://localtunnel.me
  • local_host: 代理到指定主机名而不是 localhost
  • local_https: 启用到本地 HTTPS 服务器的隧道
  • local_cert: 本地 HTTPS 服务器的证书 PEM 文件路径
  • local_key: 本地 HTTPS 服务器的证书密钥文件路径
  • local_ca: 自签名证书的证书颁发机构文件路径
  • allow_invalid_cert: 禁用本地 HTTPS 服务器的证书检查

事件

tunnel 实例会触发以下事件:

事件 参数 说明
request info 当隧道处理请求时触发,包含 method 和 path 字段
error err 当隧道发生错误时触发
close - 当隧道关闭时触发

方法

方法 参数 说明
close - 关闭隧道

其他语言客户端

服务端

查看 localtunnel/server 了解支持 localtunnel 的服务端详情。

开源协议

MIT