为什么会出现跨域的问题? 因为浏览器本身存在同源政策,即协议,域名,端口相同,视为同一个域(源);下面我分步描述一下
工具/原料
1
火狐浏览器
2
goole浏览器
方法/步骤
2
那什么是跨域呢?ajax请求一个目标地址为非本域(协议,域名,端口任意一个不同)的web资源,就是跨域。谷歌浏览器出现跨域问题,会报错,数据不会在控制台打印出来
3
然后我用了火狐浏览器,虽然也有警告提示,但是我的json数据是能被获取的火狐为了方便是允许跨域的(虽然这样很不安全)
4
现在的问题就很明显了,谷歌浏览器不允许跨域访问,我找到几个解决的办法
5
上一步骤的第二种和第三种就不说了,现在讲讲第一种使用JSONP方法跨域 它的基本思想是,网页通过添加一个《script》元素,向服务器请求JSON数据,这种做法不受同源政策限制;服务器收到请求后,将数据放在一个指定名字的回调函数里传回来。首先,网页动态插入《script》元素,由它向跨源网址发出请求 客户端方法:
6
jQuery 方法:
注意事项
以上的两种方法需要配合后端完成,服务器收到请求后,将数据放在一个指定名字的回调函数里传回来。前端即可以拿到数据了。
上一篇:姜橘红糖的做法
下一篇:夏季到了 小编教你如何吃荔枝