🚀 在 VS Code 中

本地端口转发

Visual Studio Code 通过 Microsoft Dev Tunnels 内置了对端口转发的支持,无需安装扩展。当运行本地 Web 服务时,您可以使用端口视图使该服务可以通过 Internet 访问。

如何使用本地端口转发

首先,您需要有一个要转发的服务。如果您还没有服务,但已安装 Node.js,则可以运行以下命令在端口 3000 上启动服务器

npx serve

然后,导航到面板区域中的端口视图(端口: 聚焦端口视图),然后选择转发端口

Forward a Port button displayed in the Ports view

如果您之前没有使用 GitHub 登录过,系统会提示您登录。然后,输入您要转发的端口;使用上述命令的默认端口是端口 3000。完成后,端口转发系统将启动,并且端口视图将更新以显示您转发的端口及其转发地址

Port 3000 added to the Ports view

将鼠标悬停在转发地址上,您可以使用内联操作复制地址、在浏览器中打开它,或打开编辑器内预览。

默认情况下,转发的端口是私有的。当您导航到 URL 时,系统会要求您使用与在 VS Code 中启动端口转发过程时使用的同一 GitHub 帐户登录。您可以通过右键单击端口并选择端口可见性 > 公开来更改可见性。公开端口不需要登录。

常见问题

如果我连接到远程计算机,如何转发本地服务?

目前,端口转发仅适用于公开本地运行的服务。它尚不适用于远程连接,但我们预计将来会实现。

根据您的场景,您可能需要使用 VS Code Remote - Tunnels 扩展来隧道连接到远程计算机。您可以在 Remote - Tunnels 文档中了解更多信息。

转发的端口是如何保护的?

默认情况下,托管和连接到隧道都需要使用相同的 GitHub 或 Microsoft 帐户在两端进行身份验证。在这两种情况下,VS Code 都会与 Azure 中托管的服务建立出站连接;通常不需要更改防火墙,并且 VS Code 不会设置任何网络侦听器。

但是,如果您打开了公开端口,则任何拥有您的链接的用户都可以访问转发的服务。您应该小心避免通过此类端口托管任何机密信息或不安全的服务。

您可以在其文档中了解有关底层 Dev Tunnels 服务的安全性的更多信息。

端口转发有哪些限制?

端口转发对使用的带宽量和可以使用的活动计算机数量都有限制,这些限制可能会随时间而变化。在 Remote-Tunnels 文档中阅读有关隧道使用限制的更多信息。

我可以跨组织配置策略吗?

如果您是想要控制对端口转发的访问权限的组织的一部分,则可以通过允许或拒绝访问域 global.rel.tunnels.api.visualstudio.com 来实现。

对于运行 Windows 设备的用户,您还可以配置然后部署 Dev Tunnels 的组策略设置。您可以在 Dev Tunnels 文档中了解更多信息。