javascript 跨域问题以及解决办法
作者:Dear_Mr 时间:2024-04-23 09:12:16
javascript 跨域问题以及解决办法
什么是跨域问题?
跨域这个问题是由于浏览器的同源策略引起的,请求的URL地址,必须与浏览器的URL是相同协议、相同域名、相同端口的,否则是不允许访问的
浏览器URL | 要访问的URL | 结果 |
---|---|---|
http://www.123.com/index | http://www.123.com/server | 成功 |
http://www.123.com/index | http://www.456.com/server | 域名不相同,跨域 |
http://www.123.com:8080/index | http://www.123.com:8888/index.htm | 端口不同,跨域 |
http://www.123.com/index | https://www.123.com/index | 协议不同,跨域 |
解决办法
凡是拥有src属性的标签都可以跨域,比如script、img、iframe标签
JSONP
JSONP就是应用了script标签,JSONP的全称是JSON With Padding,JSONP由两部分组成,回掉函数和数据,回掉函数就是当响应到来时应该在页面中调用的函数,回掉函数的名字是在请求中指定的,而数据就是传入回掉函数的JSON数据
例子:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
<script type="text/javascript">
function jsonCallback(data){
alert(data);
};
var url = "http://localhost:8888/test?callback=jsonCallback";
var script = document.createElement('script');
script.type = "text/javascript";
script.setAttribute('src', url);
document.getElementsByTagName('head')[0].appendChild(script);
</script>
</head>
<body>
</body>
</html>
缺点:确认JSONP请求是否失败并不容易
安全性的问题,JSONP是从其他域加载代码执行,所以要确定其可靠性
来源:http://blog.csdn.net/dear_mr/article/details/74910468
标签:javascript,跨域
![](/images/zang.png)
![](/images/jiucuo.png)
猜你喜欢
MYSQL5 下的兼容说明(my.ini my.conf)
2008-02-23 10:13:00
python文件操作seek()偏移量,读取指正到指定位置操作
2023-07-22 10:29:14
Python实现队列的方法示例小结【数组,链表】
2023-09-27 13:52:11
Python绘制1000响大地红鞭炮动态效果
2021-08-21 20:44:26
![](https://img.aspxhome.com/file/2023/9/66009_0s.gif)
Python实现图像去噪方式(中值去噪和均值去噪)
2023-04-15 15:38:13
![](https://img.aspxhome.com/file/2023/5/75915_0s.jpg)
git使用.gitignore设置不生效或不起作用问题的解决方法
2021-06-09 17:17:07
Vscode ChatGPT插件使用(无需代理注册)
2023-05-13 18:25:01
![](https://img.aspxhome.com/file/2023/1/114691_0s.jpg)
python 实现打印扫描效果详情
2022-04-20 18:29:50
![](https://img.aspxhome.com/file/2023/2/97732_0s.webp)
解决无法配置SQL2005问题
2024-01-22 15:56:51
用javascript实现页面无刷新更新数据
2011-08-14 07:54:08
微信 java 实现js-sdk 图片上传下载完整流程
2024-04-29 14:08:03
python实现21点小游戏
2023-11-21 08:58:27
![](https://img.aspxhome.com/file/2023/2/71402_0s.jpg)
pandas归一化与反归一化操作实现
2023-07-01 13:24:57
![](https://img.aspxhome.com/file/2023/0/101620_0s.png)
MySQL数据库的自动备份与数据库被破坏后的恢复
2010-03-18 15:30:00
Go语言常用条件判断空值逻辑的使用
2024-04-25 15:10:07
Python boxplot 用法详解
2021-10-24 07:56:11
![](https://img.aspxhome.com/file/2023/6/135156_0s.png)
MySQL 主从同步,事务回滚的实现原理
2024-01-17 14:16:51
分享整理的12条sql语句连同数据
2012-07-11 16:14:59
Python学习之面向对象编程详解
2023-10-12 18:48:46
python并发爬虫实用工具tomorrow实用解析
2023-03-18 02:29:07