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

Angular调用C# HTTPS服务报ERR_CERT_COMMON_NAME_INVALID问题求助

问题解决步骤

1. 修正Angular API地址格式错误

你的environment.ts里的apiUrl存在格式错误,端口号前多了一个冒号,导致请求URL变为无效格式(https://rejkid.hopto.org/:4000/...)。

修改environment.ts:

export const environment = {
  production: false,
  apiUrl: 'https://rejkid.hopto.org:4000' // 去掉多余的冒号
};

2. 为C# ASP.NET Core服务配置正确的HTTPS证书

你误解了C#服务的HTTPS配置逻辑:ASP.NET Core默认使用Kestrel服务器,必须显式配置匹配域名的证书,否则会自动使用开发环境的默认自签名证书,该证书的CN与你的域名rejkid.hopto.org不匹配,导致证书验证失败。

步骤2.1 转换证书格式(如果需要)

Tomcat使用的是JKS格式证书,而Kestrel需要PFX格式(包含私钥)。可以用keytool转换:

keytool -importkeystore -srckeystore [你的Tomcat密钥库路径].jks -destkeystore cert.pfx -deststoretype PKCS12

执行时输入密钥库密码和PFX文件的新密码。

步骤2.2 配置Kestrel使用证书

有两种配置方式:

方式一:通过appsettings.json配置

在appsettings.json中添加Kestrel端点配置:

{
  "Kestrel": {
    "Endpoints": {
      "Https": {
        "Url": "https://192.168.0.19:4000",
        "Certificate": {
          "Path": "./cert.pfx", // 证书文件路径,可使用绝对路径
          "Password": "你的PFX密码"
        }
      }
    }
  }
}

修改CreateHostBuilder,移除硬编码的UseUrls,让程序自动读取配置:

public static IHostBuilder CreateHostBuilder(string[] args) =>
    Host.CreateDefaultBuilder(args)
        .ConfigureWebHostDefaults(webBuilder =>
        {
            webBuilder.UseStartup<Startup>();
        });

方式二:通过代码直接配置

直接在CreateHostBuilder中配置Kestrel的HTTPS证书:

public static IHostBuilder CreateHostBuilder(string[] args) =>
    Host.CreateDefaultBuilder(args)
        .ConfigureWebHostDefaults(webBuilder =>
        {
            webBuilder.UseStartup<Startup>()
                .ConfigureKestrel(options =>
                {
                    options.Listen(System.Net.IPAddress.Parse("192.168.0.19"), 4000, listenOptions =>
                    {
                        listenOptions.UseHttps("cert.pfx", "你的PFX密码");
                    });
                });
        });

3. 验证配置

  1. 重启Angular开发服务器和C#服务
  2. 清除浏览器缓存后重新测试API请求,证书错误应消失

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.12 13:15:34