浏览器的跨域----JSON---只支持GET请求
浏览器报错 CORS 请求不是 http
火狐浏览器设置步骤:
1.进入火狐配置页进行设置 ,地址栏输入"about:config"
2.点击”我了解此风险”后进入页面
3.搜索”security.fileuri.strict_origin_policy”,并设置该项为false
4.重启浏览器,可以跨域访问
谷歌浏览器:
不支持,别浪费力气了
1、什么是同源(浏览器提供的安全功能)
如果两个页面的协议,域名和端口都相同,则两个页面具有相同的源
2、跨域
2.1JSON实现原理:
通过<script>标签的src属性,请求跨域数据接口,并通过函数调用方式,接受跨域接口响应回来的数据
2.2 JSON简单实例
点击查看代码
<script>
function abc(data) {
console.log('JSONP响应回来的数据是:')
console.log(data)
}
</script>
<!-- 通过callback 告诉后台调用abc这个函数 并且返回数据name age -->
<script src="http://www.liulongbin.top:3006/api/jsonp?callback=abc&name=ls&age=30"></script>
<!-- 在getdata.js中调用abc函数 -->
<!-- <script src="./js/getdata.js?callback=abc"></script> -->
点击查看代码
<script>
$(function(){
//控制台网络下面通过js查看数据
$.ajax({
//mehods是jonNP默认请求方式为get
//?是自定义回调参数
// 会自动携带一个 callback=jQueryxxx 的参数
url:'http://www.liulongbin.top:3006/api/jsonp?name=zs&age=20',
//jquery发起jonsp请求必须通过dataType指定jonsp
dataType:'jsonp',
// 发送到服务端的参数名称,默认值为 callback 可通过jsonp指定参数名称
jsonp:'yyds',
// 自定义的回调函数名称,默认值为 jQueryxxx 格式 可通过jsonpCallback指定回调函数名称
jsonpCallback:'abc',
success:function(res){
console.log(res)
}
})
})
</script>
点击查看代码
简单说就是冬天创建script标签和删除script标签 ```</details>