跨域是怎么个事?

news2024/10/7 12:23:28

跨域是怎么个事?

  • 【一】到底什么是跨域?
  • 【二】什么是浏览器的同源策略?
  • 【三】跨域问题有哪些解决方案?
  • 【四】详细说说Nginx解决跨域问题的实现过程?
    • (1)项目准备

【一】到底什么是跨域?

跨域指的是在浏览器中,当一个网页的脚本请求访问另一个域名下的资源时,由于浏览器的同源策略限制,请求会被阻止。同源策略是为了保证用户信息的安全,防止恶意网站窃取数据。

URL 说明 是否允许通信
http://www.a.com/a.js——http://www.a.com/b.js——同一域名下——允许
http://www.a.com/lab/a.js——http://www.a.com/script/b.js——同一域名下不同文件夹——允许 http://www.a.com:8000/a.js——http://www.a.com/b.js——同一域名,不同端口——不允许 http://www.a.com/a.js——https://www.a.com/b.js——同一域名,不同协议——不允许
http://www.a.com/a.js——http://70.32.92.74/b.js——域名和域名对应ip——不允许
http://www.a.com/a.js——http://script.a.com/b.js——主域相同,子域不同——不允许
http://www.a.com/a.js——http://a.com/b.js——同一域名,不同二级域名(同上)——不允许(cookie这种情况下也不允许访问)
http://www.cnblogs.com/a.js——http://www.a.com/b.js——不同域名——不允许

【二】什么是浏览器的同源策略?

浏览器的同源策略是一种安全机制,它限制了来自不同源(域名、协议、端口)的网页之间的交互。同源策略的目的是为了防止恶意网站利用跨站脚本攻击(XSS)和跨站请求伪造(CSRF)等方式获取用户的敏感信息或执行恶意操作。

根据同源策略,一个网页只能与同源网页进行交互,即它们的协议、域名和端口必须完全相同。如果两个网页不满足同源要求,浏览器会禁止它们之间的大部分交互操作,比如读取对方的数据、修改对方的内容等。

通过同源策略,浏览器可以有效地隔离不同网站的资源和信息,提高了用户的安全性和隐私保护。但同时也给开发人员带来了一些限制,因为跨域操作通常是很常见的需求。为了允许特定的跨域操作,可以使用一些跨域解决方案,比如跨域资源共享(CORS)或代理服务器等。

启动一个web服务,端口是8081,然后再开启一个web服务/前端服务都可以。端口是8082,然后再8082的服务中通过ajax来访问8081的服务,这就不满足同源策略,就会出现跨域问题。

【三】跨域问题有哪些解决方案?

要解决跨域问题,可以采取以下几种方法:
(1)JSONP:通过动态创建

【四】详细说说Nginx解决跨域问题的实现过程?

(1)项目准备

前端网站地址:http://localhost:8080
服务端网址:http://localhost:8081
确认服务端是没有处理跨域的,先用postman测试服务端接口是正常的

在这里插入图片描述
当前端网站8080去访问服务端接口时,就产生了跨域问题,那么如何解决?接下来我把跨域遇到的各种情况都列举出来并通过nginx代理的方式解决

##(2)跨域主要涉及4个响应头

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/766694.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

宋浩线性代数笔记(一)行列式的计算

本帖更新b站宋浩老师的线代网课笔记,内容较为细致详细,参考书用的是科学出版社的第三版,之后会附加同济出版社第六版的教材内容。 (字不好看大家将就看吧QAQ)

【论文阅读】一些多轮对话文章的体会 ACL 2023

前言 本文是对昨天看到的ACL 2023三篇多轮对话文章的分享这三个工作都是根据一些额外属性控制输出的工作,且评估的方面比较相似,可以借鉴 方法 这几篇文章都不是做general任务的,倾向于通过一些额外信息,来做specific任务 【1】…

当低代码和无代码平台可以加速应用程序现代化时

你的组织很可能正在寻求将遗留应用程序现代化、将单片应用架构拆分为服务,并迁移到公共或私有云基础架构。在此过程中,您可能还希望改善用户体验,创建CI/CD流水线,添加测试自动化,并实施一系列其他DevOps最佳实践。 这…

水声功率放大器的作用是什么

水声功率放大器是一种专门用于水声设备的高功率电子设备,主要用于提升水下信号的传输距离和保证语音清晰度。它的作用在水下通信、水下测量、海洋科学等领域都非常重要。 其主要作用有以下几个方面: 增强信号传输距离 水声信号在水中传播会受到各种因素的…

维安股份冲刺A股上市:计划募资约15亿元,上海科学院为实控人

7月17日,上海证券交易所对上海维安电子股份有限公司(下称“维安股份”)发出问询函。据贝多财经了解,维安股份于2023年6月20日递交招股书,准备在上海证券交易所主板上市。 本次冲刺上市,维安股份计划募资15.…

解决一云多芯全球命题,浪潮云海给出了解题思路

云计算,生而为用户简化资源的使用,让用户不必关注复杂的底层硬件架构,而是通过“服务”的方式调用资源,专注于自己的业务创新。 因此,用户要上云,就天然地要求云平台必须能够屏蔽底层的硬件架构&#xff0…

轻量级应用服务器开放端口

关于使用浏览器连接自己所写的TCP进程时,由于没有开放端口,而且搜索到对应的操作来进行开放端口,所以在完成开放端口后特意做个笔记,防止忘记。 登录自己所使用的服务器的网站找到控制台 找到轻量级应用服务器 找到所需要开放端口…

建造者模式-复杂对象的组装与创建

生产一辆车,主要有以下步骤:安装骨架、安装发动机及安装轮胎。这些步骤有指定的执行顺序,步骤缺一不可。 图 传统方案 传统方案存在的问题: 传参不便,虽可在构造函数那传参,但是传参时需要注意参数顺序等…

After Effects CPU 和 RAM 使用率高,如何修复?

如果您发现 Adob​​e After Effects 的 CPU 和 RAM 使用率较高,可以按照以下方法解决该问题。 1]确保您的系统满足最低系统要求 要在您的 PC 上运行 Adob​​e After Effects,您的 PC 需要满足最低系统要求。只有这样,该程序才会停止消耗更…

WEB:Confusion1

背景知识 SSTI漏洞 题目 根据网站图片和题目描述的提示,大象是php,蟒蛇是python,说明了这个网站是用python写的 在python中,比较常规的漏洞就是SSTI模板注入 没有思路,先点login和register页面看看 查看源代码 之前…

如何防止DDoS?基于分布式云的 DDoS 解决方案一览

在日益开放和互联的世界中,DDOS(分布式拒绝服务)攻击和安全漏洞日益频发,企业都应将有效地保护其业务、声誉和数据中心免受不断加剧的DDoS攻击放在战略性位置。如何防止DDoS?看了F5提供的分布式云DDoS解决方案&#xf…

list最常用的遍历五种方式以及使用场景

目录 遍历方式的适用场景对比 迭代器遍历 列表迭代器 增强for遍历 Lambda表达式 lambda表达式简介 普通for遍历 集合中通用的并且常用的六种方法 遍历方式的适用场景对比 迭代器遍历 :在遍历过程中需要删除元素,请使用迭代器 列表迭代器&#xff1…

Java如何实现定时读取json文件里的内容

Java实现定时读取json文件里的内容 项目背景代码实现读取json配置文件定时任务 测试 项目背景 有时候我们会需要定时来读取JSON配置文件里的内容,来执行一些业务逻辑上的操作。 比如:开发一个物流运输系统,系统需要定期读取一个包含货物信息…

6个真正免费的平面设计素材网站

新手设计师没有自己的素材库,找素材费时又费力,找到了还不一定能免费下载或商用,别急!我带着我收藏多年的素材库来了,平面、UI、免扣、高清背景图、设计元素、字体等素材全部都有,重点是免费下载&#xff0…

线程池学习(四)任务调度

线程池有几个重要的属性,核心线程数,最大线程数,阻塞任务队列。 一、调度流程 1. 接收新的任务后,先判断核心线程数是否已满,未满则创建新的线程去执行任务 2. 如果核心线程数已满,再判断阻塞任务队列是否…

Vue Router相关理解2

路由的query参数 传递参数 <!-- <router-link to"/home/message/detail?id666&title你好啊">{{ m.title }}</router-link> --><!-- 跳转路由并携带query参数&#xff0c;to的字符串写法 --><!-- <router-link :to"/home/m…

MySql如何卸载干净经验分享

第一步&#xff1a;首先打开注册表&#xff1a;点击电脑的开始按钮&#xff0c;打开找到运行&#xff0c;输入regedit&#xff0c;进入注册表&#xff1b; 第二步&#xff1a;删除mysql再注册表中的信息&#xff0c;以下三个目录&#xff1a; 1.HKEY_LOCAL_MACHINE\SYSTEM\Cont…

Unity中指定物体的模型面数分析

给定一架飞机模型&#xff0c;需要分析该模型中&#xff0c;各个3D物体的面数和三角形数&#xff0c;目的是用于观察哪些物体面数过多&#xff0c;需要减面。 一、模型面数分析 二、脚本代码 using System.Collections; using System.Collections.Generic; using UnityEngine…

用VMware运行linux CentOS7时,Network中没有wired选项,只有VPN的情况解决方案

毫无征兆&#xff0c;平时使用正常的CentOS7在今天打开后发现无法连接到网络&#xff0c;wired图标也莫名的消失&#xff0c;并且在打开网络设置&#xff0c;也没有对wired的设置模块&#xff0c;这种问题很有可能是之前对云端之类的源进行操纵以及主机上挂梯子等一系列情况综合…

fastadmin+python+mysql +wxbot实现万能模糊查询(和chatgpt一起完成的)

废话不多说直接上代码&#xff1a; 功能&#xff0c;fastadmin后台管理这些机房服务器的信息&#xff0c;wxbot 通过/指令任意字段的信息查询 让wxbot去数据库里查询相关的信息&#xff0c;在通过wx发送给你。 1.创建数据库 CREATE TABLE fa_databank (ID INT AUTO_INCREMEN…