在前端开发中,我们有时需要将本地测试环境中的服务暴露给外部,以供他人测试或在不同设备上访问。这时,我们可以使用工具来实现端口映射并将本地服务暴露至公网,@chromaui/localtunnel 就是其中一款优秀的 npm 包。
安装
在命令行中执行以下命令安装 @chromaui/localtunnel:
npm install -g @chromaui/localtunnel
使用
方法一:命令行
在命令行中输入以下命令,即可将本地服务暴露至公网:
lt --port <port number>
其中,<port> 为本地服务的端口号。例如,我们要将本地 3000 端口上的服务暴露至公网,可以执行以下命令:
lt --port 3000
执行成功后,命令行中将会输出随机生成的公网地址,例如:
your url is: https://jumpy-seabream-39.loca.lt
此时,访问该地址即可访问本地服务。
方法二:Node.js API
@chromaui/localtunnel 还提供了 Node.js API,使得我们可以在 Node.js 代码中使用它。以下是使用方法:
-- -------------------- ---- ------- ----- ----------- - --------------------------------- ----- -------- ------------------------ - ----- ------ - ----- ------------- ----- ---- --- ----------------- ------ --- --- ---------------- ------------------ -- -- - ------------------- --------- -- - -------------------------
以上代码将本地 3000 端口的服务暴露至公网,并在控制台输出公网地址。tunnel.on('close', ...) 可以监听隧道关闭事件。
方法三:CLI 脚本
我们可以编写一个 CLI 脚本来方便地暴露本地服务。以下是示例代码:
-- -------------------- ---- ------- -------------- ---- ----- ----- - ---------------------- ----- - ------- - - ------------------------ ----- - ----- - - ------------------------ ----- ---- - ---------------------------- --------------- - ----- --------- --------- ------ ---- -- -------- ------------- ----- -- -------------------- - ----- --------- --------- ---------- -- --- ------------ -- --------------- - ----- ---------- --------- ----- ------ --- -- --------- -------- ------ -- --------- ----- ----- -- - ----------- ---------- ---------- ----------------- - --------------- --------------- - ---- -------------------- ------ -- - ----- ------ - ---------------------- -- ------------------------ --- --- --- - ----- --------- - ---------------------- --- --- --------- ------------------- ---- -------------- -- ----------- - ----- ---- - ------------- ------------ - - ---- - ------------------- - -- -------------------- ------ -- - ----------------- ------ --------- -- -------------- ------ -- - --------------- ------ ---- ---- --------- --
在命令行中执行以下命令将该脚本链接至全局:
npm link
然后我们就可以在命令行中输入:
expose-local-port -p 3000
即可将本地 3000 端口的服务暴露至公网。
总结
通过本文,我们学习了如何使用 @chromaui/localtunnel 工具将本地服务暴露至公网,并且介绍了使用命令行、Node.js API 和 CLI 脚本三种使用方式。在实际开发中,这款工具可以帮助我们更方便地测试和分享服务,提高开发效率。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/5eedac31b5cbfe1ea0610978