我在 CodeIgniter 中有我的后端。還有我在 Angular 的前面。
我可以收到請愿書,但洗掉請愿書不起作用。
我的服務功能:
public deleteProducto(id:number): Observable<void> {
let direccion = "http://localhost:8080/restnatur/" id;
const headers= new HttpHeaders()
.set('content-type', 'application/json')
.set('Access-Control-Allow-Origin', '*')
return this.http.delete<void>(direccion,{ headers });
}
在我的組件中:
public deleteProductos(id:number) {
this.api.deleteProducto(id).subscribe();
}
但我得到:
Access to XMLHttpRequest at 'http://localhost:8080/restnatur/1' from origin 'http://localhost:4200' has been blocked by CORS policy:
對預檢請求的回應未通過訪問控制檢查:它沒有 HTTP ok 狀態。

我不知道我做錯了什么。有什么建議?
謝謝!
uj5u.com熱心網友回復:
默認情況下,Angular 服務器在 localhost:4200 (PORT 4200) 上提供服務,假設您的后端服務器在不同的埠或域上作業,那么 CORS 問題將不可避免地發生。您的錯誤訊息指出 4200 埠而不是 8080
- 如果您使用的是快速服務器安裝 cors。
// server.js
常量表達 = 要求(“表達”);const cors = 要求('cors'); 常量應用程式 = 快遞();app.use(cors());
- 要通過代理配置啟用 CORS,我們需要在 Angular 根檔案夾中生成一個 src/proxy.conf.json 檔案。 請參閱 Angular Cors 代理配置
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/456853.html
下一篇:api依賴于CI3
