Microsoft 浏览器 Link 是否适用于 API 个项目?

Does Microsoft Browser Link work for API projects?

我已经在 ASP.NET Core 3.1 API 项目和 ASP.NET Core 5.0 项目上安装了 Microsoft.VisualStudio.Web.BrowserLinkMicrosoft.VisualStudio.Web.BrowserLink.Loader(分开,而不是一起) API 项目。在每个应用程序中,即使我从浏览器 Link 仪表板打开浏览器,浏览器 Link 也会被禁用。这不适用于 API 项目吗?我正在使用 Visual Studio 2019 社区版。

首先,浏览器 Link 在 Visual Studio 中默认禁用。使用前,请记得先启用

其次,检查 Microsoft Browser Link works:

Browser Link uses SignalR to create a communication channel between Visual Studio and the browser. When Browser Link is enabled, Visual Studio acts as a SignalR server that multiple clients (browsers) can connect to. Browser Link also registers a middleware component in the ASP.NET Core request pipeline. This component injects special <script> references into every page request from the server. You can see the script references by selecting View source in the browser and scrolling to the end of the <body> tag content:

   <!-- Visual Studio Browser Link -->
   <script type="application/json" id="__browserLink_initializationData">
       {"requestId":"a717d5a07c1741949a7cefd6fa2bad08","requestMappingFromServer":false}
   </script>
   <script type="text/javascript" src="http://localhost:54139/b6e36e429d034f578ebccd6a79bf19bf/browserLink" async="async"></script>
   <!-- End Browser Link -->
   </body>

对于 WebAPI 应用程序,因为它 return 网页没有上述 <script> 脚本。浏览器 Link 无法检测到网络 API return 数据。因此,在浏览器 Link 仪表板中,API 应用程序一直显示“无当前连接”并且 Microsoft 浏览器 Link 不适用于 API 项目(您也可以单击“仪表板中的“在浏览器中查看”,它将return 一个带有 404 错误的网页。

要使用 Microsoft Browser Links,您可以尝试将应用程序更改为 ASP.NET Core Razor Pages 或 MVC 项目,然后,结果如下: