网站首页 > 技术教程 正文
这块内容,我们主要从以下方面进行解决:
什么情况下会出现跨域问题? 实例演示跨域问题 具体的解决方案是什么?
同源策略
浏览器的同源策略:是一种约定,是浏览器最核心也是最基本的安全功 能,如果浏览器少了同源策略,则浏览器的正常功能可能都会受到影 响。
同源: 协议、域名(IP)、端口相同即为同源
http是一种协议,https也是一种协议
发送请求失败的一种典型特征:
http://192.168.200.131/user/1
https://192.168.200.131/user/1
由于协议不同会造成请求失败
另一种失败的原因,协议相同,IP不同也会失败
http://192.168.200.131/user/1
http://192.168.200.132/user/1
另一种失败原因端口不一致造成失败
请求域名不同也不满足同源策略
端口不一致也不满足同源策略
访问端口同为80,默认是80满足同源策略
http://www.nginx.org:80/user/1
http://www.nginx.org/user/1
跨域问题
简单描述下:
有两台服务器分别为A,B,如果从服务器A的页面发送异步请求到服务器B获 取数据,如果服务器A和服务器B不满足同源策略,则就会出现跨域问题。
跨域问题的案例演示
现在这里有两台服务器,准备两台服务器数据之间相互发送数据请求
第一步,编辑a.html页面
第二步:编辑一个页面,向某一个IP发送请求数据
<html>
<head>
<meta charset="utf-8">
<title>跨域问题演示</title>
<script src="jquery.js"></script>
(2)在nginx.conf配置如下内容
<script>
$(function(){
$("#btn").click(function(){
$.get('http://192.168.200.133:8080/getUser',function
(data){
alert(JSON.stringify(data));
});
});
});
</script>
</head>
<body>
<input type="button" value="获取数据"
id="btn"/>
</body>
</html>
第三步 使用vim nginx.conf打开配置文件
第四步,配置server,8080端口,访问/getUser时候,返回200的数据
server {
listen 8080;
server_name localhost;
location /getUser{
default_type application/json;
return 200 '{"id": 1xxxxx}'
}
}
第五步:检验语法,重载配置
第六步: 出现了跨域的问题了
Access to XMLHttpRequest at 'http://192.168.200.133:8080' from origin 'http://192.168.200.133'
猜你喜欢
- 2024-10-15 haproxy和nginx负载均衡(nginx负载均衡ip_hash策略)
- 2024-10-15 Centos 7 network.service 启动失败
- 2024-10-15 nginx做负载后导致登录失败返回新的cookie原因分析
- 2024-10-05 nginx报错之413 Request Entity Too Large导致文件上传失败的问题
- 2024-10-05 Nginx系列:Nginx自带后端健康检查
- 2024-10-05 Nginx负载均衡健康检测,你了解过吗?
- 2024-10-05 Nginx负载均衡原理及应用实践(nginx负载均衡策略有哪些,它是如何实现的)
- 2024-10-05 SSL证书安装失败怎么办?看这里教你轻松解决
- 2024-10-05 「系统架构」Nginx调优之变量的使用(4)
- 2024-10-05 面试中关于Nginx的十问九答(面试中关于nginx的十问九答有哪些)
你 发表评论:
欢迎- 最近发表
-
- 阿里P8大佬总结的Nacos入门笔记,从安装到进阶小白也能轻松学会
- Linux环境下,Jmeter压力测试的搭建及报错解决方法
- Java 在Word中合并单元格时删除重复值
- 解压缩软件哪个好用?4款大多数人常用的软件~
- Hadoop高可用集群搭建及API调用(hadoop3高可用)
- lombok注解@Data没有toString和getter、setter问题
- Apache Felix介绍(apache fineract)
- Spring Boot官方推荐的Docker镜像编译方式-分层jar包
- Gradle 使用手册(gradle详细教程)
- 字节二面:为什么SpringBoot的 jar可以直接运行?
- 标签列表
-
- 下划线是什么 (87)
- 精美网站 (58)
- qq登录界面 (90)
- nginx 命令 (82)
- nginx .http (73)
- nginx lua (70)
- nginx 重定向 (68)
- Nginx超时 (65)
- nginx 监控 (57)
- odbc (59)
- rar密码破解工具 (62)
- annotation (71)
- 红黑树 (57)
- 智力题 (62)
- php空间申请 (61)
- 按键精灵 注册码 (69)
- 软件测试报告 (59)
- ntcreatefile (64)
- 闪动文字 (56)
- guid (66)
- abap (63)
- mpeg 2 (65)
- column (63)
- dreamweaver教程 (57)
- excel行列转换 (56)
本文暂时没有评论,来添加一个吧(●'◡'●)