首页 > 其他分享 >同源政策的安全性对比与跨域现象的产生

同源政策的安全性对比与跨域现象的产生

时间:2024-08-17 13:54:27浏览次数:8  
标签:www 跨域 js 域名 同源 com 安全性

同源政策保证了浏览器的安全性的同时,也导致了跨域的产生

同源策略是一个重要的安全策略,它用于限制一个origin的文档或者它加载的脚本如何能与另一个源的资源进行交互。它能帮助阻隔恶意文档,减少可能被攻击的媒介。
同源:协议、域名、接口同时相同

同源政策的作用:

限制了当前域下的js脚本访问其他域下的cookie、‌localStorage和indexDB‌。‌

‌当前域下的Ajax请求无法发送到其他域‌。‌

‌当前域下的js脚本无法操作或访问其他域下的DOM‌。‌

同源政策保证了浏览器的安全性的同时,也导致了跨域的产生

js跨域是指通过js在不同的域之间进行数据传输或通信。只要协议、域名、端口有任何一个不同,都被当作是不同的域
跨域是因为后台接口文件和web前端文件不在同一个域名下,浏览器拦截了后台发送的数据

跨域的案例:

协议不同,如:http://www.a.com和https://www.a.com

端口的不同,如:www.a.com:8080和www.a.com:8088

基于不同的父域之间,如:www.a.com和www.b.com

基于同一父域的子域之间,如:a.c.com和b.c.com

跨域的解决方法

后台解决方法:
header(‘Access-Control-Allow-Origin:*‘); // header可以允许特定的域名访问请求

jsonp也支持跨域,如何获取返回的数据:
web页面调用js文件则不受跨域的影响
凡是拥有“src”这个属性的标签都拥有跨域的能力,比如script、img、iframe

框架中的解决方法:
vue-cli中axios有跨域代理设置(即使服务器没有设置header,也可以跨域)
devServer: {
    //proxy: ‘http://localhost:80‘
    proxy: ‘http://www.wenxuesucai.com:80‘
},

免费的API接口开放平台

标签:www,跨域,js,域名,同源,com,安全性
From: https://blog.csdn.net/2401_86516040/article/details/141279720

相关文章

  • Web3开发中的时间锁与多签名机制:确保安全性与控制
    在Web3开发中,确保交易的安全性和数据的一致性是至关重要的。为了应对这些挑战,开发者常常利用链上的多签名(Multi-Signature)和时间锁(TimeLock)机制。这两种机制不仅提升了系统的安全性,还增加了操作的透明度和控制性。本文将详细介绍这两种机制的基本概念、应用场景以及如何在智能合......
  • Spring Boot中的跨域资源共享(CORS)处理
    SpringBoot中的跨域资源共享(CORS)处理大家好,我是微赚淘客返利系统3.0的小编,是个冬天不穿秋裤,天冷也要风度的程序猿!在Web应用开发中,跨域资源共享(CORS)是一个常见的问题。当一个Web应用需要与另一个域下的Web服务进行交互时,浏览器出于安全考虑,会默认阻止这种跨域请求。SpringBoot......
  • Spring Boot应用的安全性加固方法
    SpringBoot应用的安全性加固方法大家好,我是微赚淘客返利系统3.0的小编,是个冬天不穿秋裤,天冷也要风度的程序猿!随着网络攻击的日益增多,确保SpringBoot应用的安全性变得尤为重要。本文将介绍几种加固SpringBoot应用安全性的方法,并通过代码示例来展示其实现。使用HTTPS确保数据......
  • axios访问后端,及后端返回前端报错跨域问题
    packagecom.example.demo.test.config;importorg.springframework.util.StringUtils;importjavax.servlet.*;importjavax.servlet.annotation.WebFilter;importjavax.servlet.http.HttpServletRequest;importjavax.servlet.http.HttpServletResponse;importjav......
  • C语言内存管理,分配、使用、释放以及安全性
    在C++中,内存分配是通过几种不同的方式来管理的。这包括自动存储、静态存储和动态存储。下面分别解释这些存储类别以及如何使用它们进行内存分配。#1,自动存储(AutomaticStorage)这是最常用的存储类型,当一个变量在函数内被声明时,它会自动获得存储空间,并且在函数结束时自动释放。例......
  • TP6发送邮件的功能安全性与性能优化探讨!
    TP6发送邮件功能集成测试?如何优化TP6发送邮件性能?ThinkPHP6以其高效、便捷的特点,成为许多开发者的首选。AokSend将重点探讨TP6发送邮件功能的安全性和性能优化问题,以确保邮件发送的稳定性和安全性。TP6发送邮件:功能概述TP6发送邮件功能支持多种邮件协议,如SMTP、Mailgun、S......
  • Django 解除跨域限制
    Django解除跨域限制在Web开发中,跨域资源共享(CORS)是一个重要的安全特性,它限制了网页只能与其同源的服务器进行交互。然而,在开发过程中,我们经常需要前端(如Vue.js、React等)与后端(如Django)之间进行跨域请求。为了方便开发和测试,我们需要在Django中解除跨域限制。本文将详细介绍如何......
  • Kafka生产调优实践。Kafka消息安全性、消息丢失、消息积压、保证消息顺序性
    文章目录搭建Kafka监控平台合理规划Kafka部署环境合理优化Kafka集群配置优化Kafka客户端使用方式合理保证消息安全消费者防止消息重复消费生产环境常见问题分析消息零丢失方案消息积压如何处理如何保证消息顺序搭建Kafka监控平台官网地址下载efak-web-3.0.2-bi......
  • django 跨域
    1、安装依赖库django-cors-headerspipinstalldjango-cors-headers2、setting设置(支持所有的IP进行跨域)修改Django项目文件夹下的setting.py文件#django_project/setting.py#修改允许访问的IPALLOWED_HOSTS=['*']#允许全部IP访问项目INSTALLED_APPS=['......
  • flask 跨域
    在Flask中,可以通过安装flask-cors扩展来支持跨域请求。可配置全局或单个特定的API的跨域请求。1、安装flask-cors扩展库pipinstallflask-cors2、在Flask应用中导入并初始化CORS扩展(全局设置:所有的API都可被跨域请求到)#!/usr/bin/python#-*-coding:utf-8-*-fromfl......