.Net 5 launchSettings.json的Profiles与Editor对象配置及HTTPS报错解决
解决方案
1. launchUrl 字段正确配置
你当前控制器设置的路由规则是 [Route("[controller]/[action]")],没有 api 前缀,控制器名称为 GeneratorController,对应路由段为 Generator,你定义的GET接口路由为 Generator/GenerateData/{input},必须携带input参数才能正常访问。
你之前设置的launchUrl: "api/value"是默认Web API模板自带ValueController时的配置,你已经删除/修改了默认控制器,这个地址自然无效。
如果需要启动浏览器后直接打开可访问的接口,可将两个profile下的launchUrl修改为:
"launchUrl": "Generator/GenerateData/test"
如果不需要自动启动浏览器,直接把launchBrowser设为false即可,用接口测试工具(如Postman)调试更方便。
2. HTTPS连接重置问题解决
这个报错大概率是端口对应错误或者开发证书未信任导致的:
- 先确认你启动的Profile:
- 启动
IIS Expressprofile时,HTTPS端口是配置中iisExpress下的44347,不是5001,访问5001端口自然会提示连接重置 - 只有启动
Editorprofile时,才会使用applicationUrl中配置的5001作为HTTPS端口
- 启动
- 信任ASP.NET Core开发HTTPS证书:打开终端执行命令
dotnet dev-certs https --trust,按照系统提示完成信任操作后重启项目即可解决HTTPS连接重置问题
3. 额外优化建议
你当前的POST方法路由也设置了GenerateData/{input},但参数是[FromBody]获取的,路由里的{input}不会生效,建议调整POST方法的路由模板避免混淆,也可以避免同路径下GET/POST方法可能出现的路由匹配冲突。
内容的提问来源于stack exchange,提问作者EternalCuriosity
相关产品推荐
相关产品推荐

