前端小白必读之跨域问题:Access to XMLHttpRequest*from origin*has been blocked by CORS..Access-Control-Allow-O...

问题描述

某小白是一个只略懂基础三件套和 Angular 框架的前端初学者,这天,小白开始尝试和后端服务器对接,控制台却打印出了如下错误信息:

小白看得一头雾水,ta 赶忙搜索与has been blocked by CORS policy: No 'Access-Control-Allow-Origin'相关的解释,这才逐渐明白过来。原来,浏览器的安全策略中存在一个同源策略,这个策略要求浏览器的 ajax 只能访问跟它的 HTML 页面同源(相同域名或IP)的资源,而小白的本地测试环境显然与后端服务器不同源,访问属于跨域访问,因此被拒绝。

跨域问题的解决方案有多种,但小白主动把锅揽到了自己身上,选择在前端解决该问题。

解决方案

反向代理——设置一个代理服务器(不需要真实存在),使该代理和后端服务器同源,客户端的请求由该代理转发,这样就不存在跨域了。
Angular 下反向代理的配置流程如下:

  1. 在项目根目录下创建proxy.config.json,内容如下:
{
   
  "/ap
  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值