JSONP解决跨域问题

150 阅读1分钟

什么是跨域?

同源策略,需要满足三同,协议+域名+端口三者相同,有一个不同都属于跨域的问题,为了安全,不同源的地址之间是不能互相访问,要解决跨域的问题,这里提供几种简单的方法。

1.JSONP

此方法由前端和后端配合完成。JSOP的原理是,前端利用script标签的src属性来解决,向服务器请求JSON数据,这样就不受同源策略限制,服务器收到请求后,将数据放在一个回调函数中传过来,具体操作如下,

定义fn函数fn的形参即可获取传过来的数据

后端做的事res.json(‘fn({code:10000,success:成功})’) JSONP发送的请求跟ajax没有关系,JSONP发送参数实现的原理是把参数拼接到src后面,故只能发送get请求,不能发送get请求。