前端解决多个跨域问题

2023-11-11

前端解决多个跨域问题

前言:虽然一直是前后端分离,但是没了解过跨域问题,直接是vue.config.js中的内容直接搬过来改改,但是后来调用了下百度语音拟合的api接口发现,有跨域问题,这个肯定不能动用后端了就查了下资料改了下proty代理的配置,总结了一下。

对于问题要知道前因后果,所以先理解下为什么有跨域问题?

因为前端代码是跑在浏览器里的
你的所有网路请求说白了就是浏览器帮你发出去的. 并不是什么js帮你发出去的, js只是一门语言, 他只是按照浏览器的要求, 语法的要求, 按照一定的规范和格式, 把数据发出去, 就是这样。

为什么后端没有跨域这个问题?
因为后端是跑在系统里面的浏览器可以主动发起一个跳过跨域的网络请求, 但是他不会让你在 它的内核 里发起跨域请求. 浏览器是跑在系统里的, 后端写的程序也是直接跑在系统里的,前端相当于是浏览器的下属, 得听从浏览器的规则。

为什么浏览器不允许你去发送跨域请求?
很简单, 因为没有哪家浏览器有那个能力自己造内核, 基本都是行业内比较知名的内核, 比如 chrome 的内核, 浏览器只是一个壳, 然后把内核嵌入进去, 你前端界面的渲染包括界面的展示, 并不是浏览器弄出来的, 而是内核渲染出来的.

而且对于任何正常的内核来说纯前端都是不允许跨域的

对于跨域问题有两种解决模式
①前端②后端

我是前端,所以。。。

我们现在都是前后端分离开发,所以在前端利用webpack配置反向代理
在webpack配置反向代理,如果是多个跨域问题u我们可以配置多个代理解决本地跨多个域名的问题

在项目中创建vue.config.js,配置proxy[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Lb3337Oe-1630243201233)(%E8%A7%A3%E5%86%B3%E5%A4%9A%E4%B8%AA%E8%B7%A8%E5%9F%9F%E9%97%AE%E9%A2%98.assets/image-20210829211429208.png)]当我们请求的时候直接利用/dev代替http://tsn.baidu.com ,/表示http://localhost:3003

this.$axios.get("/dev/add")
this.$axios.get("/update")

这样请求就相当于http://tsn.baidu.com/add
这样请求就相当于http://localhost:3003/update

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

前端解决多个跨域问题 的相关文章

随机推荐

  • Python爬虫获取10页的图片、文本数据并传入linux上的mysql数据库中

    一 任务需求 爬取网址之家的网站排行信息 共获取6个指标 2张图片和4个文本字符串 观察发现每个网页共30个 一共需要爬取10页 并把图片存入PNG目录下 文本信息存入info txt文件中 最后上传到linux上的Mysql数据库中 二
  • SpringBoot+mybatisPlus + dynamic-datasource实现真正的动态切换数据源(附核心代码)

    文章目录 前言 创建主库 生成mapper等代码 定义新数据源 创建初始化runner类 创建Mybatis配置类 拦截器实现动态切换 前言 系统要调整为S A S S版实现多 租 户功能 首先想到的两个解决方案就是 1 通过表字段隔离租户
  • 大数据可视化界面截图(三)

    电商销售 购买力 舆情 集团数据 品牌电商
  • Vijava 学习笔记之(VirtualMachine 更改虚拟机系统磁盘大小)

    源代码 package com vmware client import com vmware util Session import com vmware vim25 import com vmware vim25 mo Created
  • Tomcat打破双亲委派

    复习复习JVM类加载机制 再谈谈 Tomcat 的类加载器如何打破 Java 的双亲委托机制 JVM 的类加载器 Java 的类加载 就是把字节码格式 class 文件加载到 JVM 的方法区 并在 JVM 的堆区建立一个java lang
  • 阿里云服务器使用记录

    阿里云服务器SSH连接 1 登录打开个人ECS实例 2 确认服务器密码 3 选择VNC连接登录 3 1 注意保存连接密码 或者修改为个人密码 3 2 登录修改文件 vim etc ssh sshd config PermitRootLogi
  • 区块链包含术语概念【27术语整理汇总】

    问题导读1 区块链包含哪些概念 2 什么是工作量证明 3 什么是共识机制 4 你认为哪些概念比较重要 区块链现在很多人都在学习 无论是看书籍 还是看视频 我们有时候并不是明白讲的是什么 比如工作量证明 共识机制等等 所以这里补充下概念 由于
  • 导读:生活中的设计模式——启程之前,请不要错过我

    为什么叫设计模式 什么是设计模式 设计模式与生活有什么联系 为什么要学设计模式 如何进行学习 为什么选择 Python 弥补市场空缺 大势所趋 Python 已然成风 简单的 Python 基础 Python 的特点 基本语法 常用容器 L
  • zabbix 监控硬件

    之前介绍的zabbix监控都是属于监控服务方面 现在介绍一下zabbix监控服务器硬件信息的 本文出自 吟 技术交流 博客http dl528888 blog 51cto com 2382721 1403893 之前介绍的zabbix监控都
  • POJ-2676 Sudoku(简单数独-dfs深搜)

    Sudoku Time Limit 2000MS Memory Limit 65536K 题目链接http poj org problem id 2676 Description Sudoku is a very simple task A
  • Ubuntu: Docker安装与操作

    在进行docker安装前 我们首先得有以下工具 xshell FileZilla Client Xshell下载安装教程 FileZilla Client下载安装教程 如果你的Ubuntu是纯净的 也就是说刚下好并且刚用虚拟机装好的 你得先
  • 渗透测试用工具(三)layer子域名挖掘机

    一 为什么要搜集子域名 收集网站信息的时候子域名收集是非常重要的一部分 通常在一个主站进行防护完善的情况下找不到渗透点的话 我们可以考虑在子站点进行渗透爆破 通过旁站C段进行渗透 子域名收集是渗透测试中 前期信息收集必不可少的一个阶段 域名
  • gstreamer简介--TX2打开摄像头失败解决

    参考链接 https blog csdn net tx3344 article details 7497434 https blog csdn net Tosonw article details 104199195 这两篇都是gstrea
  • 将IdeaVim与IntelliJ一起使用

    我已经成为VIM用户几年了 并且还在IntelliJ中使用IdeaVim插件 以下配置和功能对我有很大帮助 您可以在 ideavimrc文件中配置与常规VIM中相同的键 ideavimrc 设置idearefactormode keep可以
  • “QtCore/qglobal.h”: No such file or directory错误的解决

    QtCore qglobal h No such file or directory错误的解决
  • java8 StreamAPI串行流和并行流

    串行流与并行流 创建一个1 10的list List
  • 信息泄露-小白初识

    生活在网络化 信息化的今天 我们时不时的会听到某某国家 某某网站泄露了多少亿的用户数据 这些数据包括个人的姓名 联系电话 家庭住址 甚至更恶劣的包括个人银行卡账号 宾馆以及网购记录等 如此高速的网络让我们享受到了便利 恐怖的数据泄露事件却另
  • 大数据数据倾斜问题

    数据倾斜 数据倾斜是我们在处理大数据量问题时绕不过去的问题 也是在面试中几乎必问的考点 正常的数据分布理论上都是倾斜的 就是我们所说的 二八原理 80 的财富集中在20 的人手中 80 的用户只使用20 的功能 20 的用户贡献了80 的访
  • SVN 报错 sqlite[S11]: database disk image is malformed

    http blog csdn net yeshencat article details 73741123 蛋碎的开机一会儿 想着把第一件事儿就是更新svn svn正更新 发现鼠标移动不了 还以为电脑USB端口供电不足 结果特么电脑死机 再
  • 前端解决多个跨域问题

    前端解决多个跨域问题 前言 虽然一直是前后端分离 但是没了解过跨域问题 直接是vue config js中的内容直接搬过来改改 但是后来调用了下百度语音拟合的api接口发现 有跨域问题 这个肯定不能动用后端了就查了下资料改了下proty代理