什么是跨域?
跨域是因为浏览器的同源策略引起的。
同源策略:从一个域名的网页去请求另一个域名的资源时,域名、协议、端口号,只要有一个不同就是跨域。
如何解决跨域
方法1
- 在Angular的工作目录中,和angular.json同级的目录下新建 proxy.config.json
{ "/api": { "target": "http://localhost:8080", "secure": false } }
说明:当我们访问http://localhost:4200/api 时,其实就相当于访问http://localhost:8080 的地址,比如在angular服务中配置地址,其实就是在访问http://localhost:8080/ctp/trades
return this.http.get(`/api/ctp/trades`);
- 配置angular.json文件,在对象key 等于 serve 中的 options 下增加一项
"options": {
"proxyConfig": "proxy.config.json"
}
- 修改package.json
"start": "ng serve --proxy-config proxy.config.json",
重启: npm start