为什么我使用来自 Angular 服务的自签名证书调用 HTTPS API 时出现此 ERR_CERT_AUTHORITY_INVALID 错误?
Why am I obtaining this ERR_CERT_AUTHORITY_INVALID error calling an HTTPS API using a self signed certificate from an Angular service?
我在尝试从 Angular 服务调用外部 REST HTTPS API 时遇到以下问题:
我有这个 Angular 服务:
@Injectable()
export class MailDetailProtocolloService {
private protocolloAooApiUrl = 'https://myservercom:443/my_project/api/GetDeparmentsList';
constructor(
private http: HttpClient
)
{
}
/** GET AOO List chiamando un'API esterna */
getAooList(): Observable<Aoo[]> {
return this.http.get<Aoo[]>(this.protocolloAooApiUrl)
}
}
问题是这个 API 使用 自签名证书 并调用它 我在控制台中收到此错误消息:
GET https://myservercom:443/my_project/api/GetDeparmentsList net::ERR_CERT_AUTHORITY_INVALID
为什么?我该如何修复它并使用这个自签名证书调用它?
浏览器默认不接受自签名证书。您的计算机上安装了一份受信任的证书颁发机构(简称'CA')列表,它们可以颁发证书。为了让您的计算机信任您的证书,您必须手动将您的 CA 添加到此信任列表或直接安装自签名证书。
如何操作取决于您的操作系统和浏览器。
Here is the tutorial for Windows
Here is the tutorial for Linux
与 "fat clients" 不同,没有任何方法可以通过 Web 应用程序自动执行此操作;这是所有现代浏览器的默认安全策略。想象一下,一个网站可以在后台将敏感数据发送到恶意网站。
我在尝试从 Angular 服务调用外部 REST HTTPS API 时遇到以下问题:
我有这个 Angular 服务:
@Injectable()
export class MailDetailProtocolloService {
private protocolloAooApiUrl = 'https://myservercom:443/my_project/api/GetDeparmentsList';
constructor(
private http: HttpClient
)
{
}
/** GET AOO List chiamando un'API esterna */
getAooList(): Observable<Aoo[]> {
return this.http.get<Aoo[]>(this.protocolloAooApiUrl)
}
}
问题是这个 API 使用 自签名证书 并调用它 我在控制台中收到此错误消息:
GET https://myservercom:443/my_project/api/GetDeparmentsList net::ERR_CERT_AUTHORITY_INVALID
为什么?我该如何修复它并使用这个自签名证书调用它?
浏览器默认不接受自签名证书。您的计算机上安装了一份受信任的证书颁发机构(简称'CA')列表,它们可以颁发证书。为了让您的计算机信任您的证书,您必须手动将您的 CA 添加到此信任列表或直接安装自签名证书。
如何操作取决于您的操作系统和浏览器。
Here is the tutorial for Windows
Here is the tutorial for Linux
与 "fat clients" 不同,没有任何方法可以通过 Web 应用程序自动执行此操作;这是所有现代浏览器的默认安全策略。想象一下,一个网站可以在后台将敏感数据发送到恶意网站。