乐趣区

关于前端:别往下翻了三句话说清楚跨域资源请求报错的由来

别往下翻了,三句话说分明跨域资源申请报错的由来

工作中很多同学老是遇到跨域的问题,比方这样的报错

Access to XMLHttpRequest at ''http://test.com.cn/get' from origin 'http://local.com.cn:8080' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource.

其实判断是否跨域很简略

只有协定、域名、端口全副雷同才算同一域下,其余状况都存在跨域!

所谓协定:https 和 http

所谓域名:test.com.cn 和 ai.test.com.cn 也是不一样的

所谓端口:80 端口和 8080 端口天然也是不一样的

当然,跨域不肯定会有跨域问题。

因为跨域问题是浏览器对于 ajax 申请的一种平安限度:一个页面发动的 ajax 申请,只能是于当前页同域名的门路,这能够无效组织跨站攻打。也就是说, 跨域问题是针对 ajax 的限度,是浏览器的自我爱护行为。

通常状况下咱们都是应用 cors 解决跨域,这里须要后端的开发同学做一些配置。

针对简略和简单申请,又分两种解决形式。这个咱们今天专门写一篇文章。

ps:CORS,是 HTML5 的一项个性, 它定义了一种浏览器和服务器交互的形式来确定是否容许跨域申请

后盾能够增加头不信息与前端互相对应,前端发送申请与后盾管制的权限进行互相比拟,从而获取到后盾的相干权限,这样就没有跨域问题了。

退出移动版