美文网首页js css html
浏览器同源策略&跨域问题

浏览器同源策略&跨域问题

作者: Confucianmen大宇 | 来源:发表于2023-01-01 13:35 被阅读0次

同源策略

protocol协议、domain域名、port端口必须一致;限制跨域交互,这是浏览器一个用于隔离浅在恶意文件的重要安全机制。

解决跨域问题

同源策略导致的跨域问题是浏览器单方面拒绝相应数据,服务器端是处理完毕并做出相应的的。

代理跨域

实现原理:同源策略是浏览器需要遵循的标准,而如果是服务器向服务器请求就无需遵循同源策略,而代理就是想办法让他们同源
代理服务器,需要做以下几个步骤:
接受客户端请求 。
将请求 转发给服务器。
拿到服务器 响应 数据。
将 响应 转发给客户端。

代理跨域原理
每个框架的代理方式都不一样,一般情况下会把目标服务器写在proxy这个字段后面。

vue跨域

在webpack的devServer里,webpack.config.js(vue中为vue.config.js)中配置如下信息:

module.exports = {
    //关闭eslint
    lintOnSave: false,
    devServer: {
        // true 则热更新,false 则手动刷新,默认值为 true
        inline: false,
        // development server port 8000
        port: 8001,
        //代理服务器解决跨域
        proxy: {
            //会把请求路径中的/api换为后面的代理服务器
            '/api': {
                //需要跨域提供数据的服务器地址,如果是域名需要额外添加一个参数changeOrigin: true,否则会代理失败
                target: 'http://39.98.123.211',

            }
        },
    }
}

配置文件需要重启动才能运行。

CORS

JSONP

由于同源策略的限制,AJAX请求是不允许进行跨域请求的,但是在HTML中,拥有src和href属性的标签是可以跨域请求外部资源的,如link、script、img、frame等(值得注意的是,不同标签允许的交互类型貌似是不同的,分别为跨域写、跨域资源嵌入、跨域读。

相关文章

  • 前端问题总结

    1. 浏览器跨域问题: 跨域问题是浏览器为了安全实施的同源策略导致的,同源策略限制了来自不同源的document、...

  • 同源策略和跨域

    什么是跨域问题? 为什么会出现跨域问题? 因为浏览器的同源策略(同源指的是:协议+域名+端口相同)。 同源策略是浏...

  • 面试官:那有没遇到跨域问题,如何解决跨域?

    面试官:有没遇到跨域问题,如何解决跨域? 一、同源策略 谈到跨域问题,要先谈浏览器的同源策略。 二、解决方案 1、...

  • Nginx的进阶二

    Nginx的进阶二 nginx的配置跨域问题 为什么会出现跨域问题 出于浏览器的同源策略限制。同源策略(Sameo...

  • 关于跨域那些事~~

    浏览器跨域是一个前端很常见的问题。 造成跨域的两种策略浏览器的同源策略会导致跨域,这里同源策略又分为以下两种DOM...

  • SpringBoot解决跨域的三种方式

    什么是跨域 为什么会出现跨域问题 处于浏览器的同源的策略限制。同源策略(Sameoriginpolicy)是一种约...

  • JSONP原理(2018-08-16)

    为什么会有跨域问题存在 因为浏览器的同源策略(协议,端口,域名任何一个不同,同源策略都会禁止跨域),原来是浏览器再...

  • 使用Koa亲自体验跨域

    跨域问题的存在是因为浏览器都遵循同源策略 同源策略 1995年,同源政策由 Netscape 公司引入浏览器。目前...

  • H5跨域访问

    跨域访问是源于浏览器的同源策略而引申出来的概念 1、先了解什么是同源策略和跨域访问 同源策略、跨域解决方案 - R...

  • 前端跨域问题(转载笔记)

    前端跨域问题 浏览器的同源策略 提到跨域不能不先说一下”同源策略”。何为同源?只有当协议、端口、和域名都相同的页面...

网友评论

    本文标题:浏览器同源策略&跨域问题

    本文链接:https://www.haomeiwen.com/subject/pvyaqdtx.html