讨论一下罕见的跨域题目

置信许多童鞋在刚打仗前后端星散的时刻都邑碰到跨域题目,那末跨域题目是怎样发生的呢??怎样来处置惩罚跨域题目呢??我们闲话少说,接下来给人人做一波剖析。

起首来看一下“跨域”题目的发生的缘由,实在“跨域”是浏览器出于平安方面斟酌作出的限定,假如不在一致域名下接见接口的话就会发生跨域题目;平常ajax要求假如由于跨域题目报错的话平常以下的报错:

post request is No ‘Access-Control-Allow-Origin’ header is present on

the requested resource.’

假如看到下面的报错,那你肯定是跨域接见了。

那末跨域题目怎样防止怎样处置惩罚呢?实在处置惩罚要领也很简单,一致域名就能够了,假如不能一致域名的话也能够用“jsonp”,来举行前后端数据传输,然则“jsonp”只支撑get接见,而且据我所知背景还要举行一些处置惩罚才行,所以“jsonp”并非一个好的要领。所以那只好用要领二了,要领二究竟是什么呢….就是在服务端做手脚,操纵起来也很简单,就是服务端在接口response的时刻加上以下的header: 就能够处置惩罚跨域题目了。

> header("Access-Control-Allow-Origin:*");
> header("Access-Control-Allow-Methods:POST,GET");

假如以上两招都行不通的话,也能够经由过程背景比方nodejs替代浏览器发送要求,背景要求不会遭到跨域题目限定,由于前面也说了,跨域是浏览器的限定,所以背景要求也是个不错的要领哦!

    原文作者:马明瑞
    原文地址: https://segmentfault.com/a/1190000013873935
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞