在Angular中,可以通过设置代理来避免CORS错误。下面是一种解决方法,其中包含了一个示例代码:
proxy.conf.json
的文件。在该文件中,设置代理的配置信息。例如,如果你想将所有以/api
开头的请求代理到http://localhost:3000
,可以将以下内容添加到proxy.conf.json
文件中:{
"/api/*": {
"target": "http://localhost:3000",
"secure": false,
"logLevel": "debug"
}
}
angular.json
文件中,将"serve"
配置中的"options"
中添加一个"proxyConfig"
属性,并将其值设置为指向刚才创建的proxy.conf.json
文件的路径。例如:"serve": {
"builder": "@angular-devkit/build-angular:dev-server",
"options": {
...
"proxyConfig": "proxy.conf.json"
}
}
--proxy-config
选项来指定代理配置文件。例如,运行以下命令来启动开发服务器:ng serve --proxy-config proxy.conf.json
/api/data
,你可以这样发送请求:import { HttpClient } from '@angular/common/http';
constructor(private http: HttpClient) {}
getData() {
return this.http.get('/api/data');
}
通过以上步骤,你就可以设置代理来避免CORS错误。所有以/api
开头的请求都会被代理到http://localhost:3000
,从而避免了CORS问题。