簡體   English   中英

如何讓 Angular 使用 HTTP 而不是 HTTPS?

[英]How to have Angular uses HTTP instead of HTTPS?

我使用標准 Angular http 模塊向本地虛擬機發送發布請求。 它不起作用,因為 Angular 不斷發送 HTTPS 請求而不是 HTTP 請求。

我用於 POST 的代碼示例:

myFunction(request: MyType): any {
   const uri = "http://myVirtualMachine/myApi/myService";
   const headers = { 'content-type': 'application/json'};
   return this.http.post<any>(uri, request, {headers});
}

如果我將 POST 發送到本地主機,這將起作用。 對於任何其他 URI,HTTP 始終替換為 HTTPS。

任何線索為什么以及如何解決這個問題?

一些注意事項:

  • Angular 12.
  • 沒有攔截器,但是如果我添加攔截器,它收到的請求包含HTTP,而不是HTTPS。
  • Edge 和 Chrome 中的相同問題,無論是否處於私有模式,甚至在清除了我能想到的所有緩存之后。
  • 域安全策略似乎不是這里的問題 (chrome:/.net-internals/#hsts)。

罪魁禍首是 index.html 中的這一行:

<meta http-equiv="Content-Security-Policy" content="upgrade-insecure-requests">

我不確定它是如何到達那里的,也許是在我安裝 msal.js 進行測試時。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM