You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

控制台应用调用localhost上的ASP.NET Core接口出现SSL连接错误如何解决

可行解决步骤

  • 先验证API服务本身可用性
    启动API项目后直接用浏览器访问https://localhost:5108的默认路由(如/weatherforecast),确认服务可以正常响应,排除API未启动成功、端口配置错误的问题。可打开API项目的launchSettings.json文件,检查applicationUrl字段是否正确配置了5108端口的http/https绑定。
  • 排查端口占用与防火墙限制
    打开命令行执行netstat -ano | findstr :5108,确认5108端口当前被API进程占用,无其他进程冲突。临时关闭系统防火墙后再次测试调用,排除本地请求被防火墙拦截的情况。
  • 临时跳过证书校验定位问题
    在控制台应用的请求逻辑中添加代码绕开SSL证书校验,测试是否可以正常请求:
    var httpClientHandler = new HttpClientHandler
    {
        ServerCertificateCustomValidationCallback = (_, _, _, _) => true
    };
    var httpClient = new HttpClient(httpClientHandler);
    
    如果跳过校验后请求正常,说明问题根源在证书信任配置,可继续执行后续证书重置操作。
  • 完全重置ASP.NET Core开发证书
    打开命令行依次执行以下命令,彻底清理旧证书并生成新的信任证书:
    1. 清理所有已存在的开发证书:dotnet dev-certs https --clean
    2. 生成新证书并添加到系统信任列表:dotnet dev-certs https --trust
      执行完成后重启Visual Studio和两个项目再测试调用。
  • 检查CORS与代理配置
    1. 在API项目的Program.cs中添加宽松的CORS策略测试,排除跨域配置拦截的可能:
    builder.Services.AddCors(opt =>
    {
        opt.AddPolicy("TestAllowAll", policy =>
        {
            policy.AllowAnyOrigin().AllowAnyMethod().AllowAnyHeader();
        });
    });
    // 在app.UseRouting()之后、app.UseAuthorization()之前添加
    app.UseCors("TestAllowAll");
    
    1. 关闭系统全局代理和Visual Studio代理配置,避免本地localhost请求被错误转发到代理服务器。
  • 调整API绑定地址
    把API的监听地址从localhost改为0.0.0.0,避免回环地址绑定限制导致的访问异常,修改launchSettings.json的applicationUrl为https://0.0.0.0:5108;http://0.0.0.0:5107(http端口可自行调整)。

内容的提问来源于stack exchange,提问作者Arianule

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.02 20:15:03