jQuery jsonp跨域请求
作者:会飞的
jQuery jsonp跨域请求:
// 成功回调
var h =$.ajax({
type: "GET",
url: "a.xinge360.com",
data : "test=1",
dataType: "jsonp",
success: function(msg){
console.log(msg)
if(msg == 1){
window.location.reload(true);
}
},
error: function(error) {
console.log(error)
}
php代码片段:
$callback=$_GET['callback'];
printf("%s(%s);", $callback, 1);//$arr为返回数据,jQuery jsonp跨域请求,
Jsonp原理:
1,首先在客户端注册一个callback (如:'jsoncallback'), 然后把callback的名字传给服务器。
此时,服务器先生成 json 数据。
2,然后以 javascript 语法的方式,生成一个function , function 名字就是传递上来的参数 'jsoncallback'的值 .
3,最后将 json 数据直接以入参的方式,放置到 function 中,这样就生成了一段 js 语法的文档,返回给客户端。
4,客户端浏览器,解析script标签,并执行返回的 javascript 文档,此时javascript文档数据,作为参数,
传入到了客户端预先定义好的 callback 函数。
猜你喜欢
您可能感兴趣的文章:
- vue 渐隐效果
- axios 拦截器
- 安装 vant
- 数组去重
- 对比两个数组,找出不同的值,返回新的数组
- nodejs配置本地转发
- 获取当前时间年月日时分秒 格式:20001212120000
- 常用属性
- vue.js中使用Export2Excel导出Excel表格
- 移动端css 初始化
- 常用属性
- 滚动banner
- lua lua_package_path attempt to call global 'lua_package_path'
- 1000行MySQL命令,很实用!
- js 获取当前url地址
- safasf
- MySQL ALTER TABLE 添加/修改/删除字段
- php获取ip地址
- ajax The 'Access-Control-Allow-Origin' header contains multiple values '*, *', but only one is allowed.