Asp.net core 为什么.net core 2.1 SPA有3个不同的端口?
我正在学习dotnet core 2.1 SPA,当我使用dotnet run运行dotnet core 2.1 SPA时,我注意到有3个不同的端口:Asp.net core 为什么.net core 2.1 SPA有3个不同的端口?,asp.net-core,asp.net-core-2.1,Asp.net Core,Asp.net Core 2.1,我正在学习dotnet core 2.1 SPA,当我使用dotnet run运行dotnet core 2.1 SPA时,我注意到有3个不同的端口: https:localhost:5001 http:localhost:5000 http:localhost:34941 当我使用第二个url时,它只是自动重定向到第一个url,我得到了安全性错误。 对于第三个url,它是有效的。我认为这是因为它是针对客户端的,第一个和第二个url将用于带有身份验证的API调用? 在有生命的环境中会发生什么
https:localhost:5001
http:localhost:5000
http:localhost:34941
public class Program
{
public static void Main(string[] args)
{
CreateWebHostBuilder(args).Build().Run();
}
public static IWebHostBuilder CreateWebHostBuilder(string[] args) =>
WebHost.CreateDefaultBuilder(args)
.UseStartup<Startup>();
}
公共类程序
{
公共静态void Main(字符串[]args)
{
CreateWebHostBuilder(args.Build().Run();
}
公共静态IWebHostBuilder CreateWebHostBuilder(字符串[]args)=>
WebHost.CreateDefaultBuilder(args)
.UseStartup();
}
5000和5001:Kestrel HTTP和HTTPS默认值
5000表示HTTP,5001表示HTTPS。那些是。5000重定向到5001,因为在启动类中使用了app.UseHttpsRedirection()
34941:NG Live Development服务器的任何可用端口
这是一个任意的可用端口,Microsoft.AspNetCore.SpaServices
用于启动NG Live Development服务器。Startup类中的spa.UseAngularCliServer(npmScript:“start”)
方法从package.json
文件中调用start
脚本,如下所示:
ng serve --extract-css "--port" "50415"`
它通过的端口是SpaServices
当前找到的任何端口
另见
CreateWebHostBuilder
功能代码here@NevilleNazerane我刚刚更新了我的问题。谢谢你的解释。我们如何告诉SpaServices不要查找可用端口,而是设置默认端口?或者我们如何告诉visual studio在找到的端口中自动打开web浏览器?@statbodik,以防您仍然需要答案:您只需在ng服务中设置它,但在它之后添加“-port 4200&REM”&REM是一个DOS“命令”,它将其后面的所有内容都视为注释。所以你最终会得到类似“ng serve-port 4200&REM”的东西@MORTEMULDER谢谢你的解释!这是一个令人沮丧的问题。奇怪的是,为了手动设置一个端口,你不得不破解类似的东西。