现已推出!阅读有关 11 月的新功能和修复的更多信息。

本地端口转发

Visual Studio Code 通过Microsoft 开发隧道内置了对端口转发的支持,无需任何扩展。运行本地 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 不会设置任何网络侦听器。

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

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

端口转发有哪些限制?

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

我可以在组织中配置策略吗?

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

对于运行 Windows 设备的的用户,您还可以配置和部署开发隧道的组策略设置。您可以在开发隧道文档中了解更多信息。