vue3delete请求报403forbidden,前后端解决方式,cookie无效问题

news2024/12/23 10:31:14

在做开发时,前期已经在Controller类加上@CrossOrigin(origins = "*"),发送get和post请求都没问题,但遇到delete请求时,又报出跨域问题

一.前端添加proxy代理服务器(未能解决)

在vue.config.js中使用devServer配置代理,在文件中添加

devServer:{
    proxy:{
      "/api":{
        target:"http://localhost:9998",
        changeOrigin: true,
        pathRewrite:{"^/api": ""},
      }
    }
  }

然后在你的axios配置文件中将baseURL改成

const API = axios.create({
	baseURL:'/api', 
	timeout: 2000                  
})

这是因为proxy中设置了target,则此时请求地址变为http://localhost:9998/api
但同时在proxy中添加了pathRewrite属性,它是一个正则表达式,匹配/api并替换为“”(空字符串),所以实际请求地址依然为http://localhost:9998/接口名称
使用proxy代理服务器的目的是:
解决跨域问题,我们的前端项目和代理服务器有相同的端口,访问代理服务器不存在跨域问题,然后由代理服务器去访问target目标地址。

二.后端重写addCorsMappings跨域方法(成功)

我这里是在src文件夹下,新建了config文件夹,创建了MyConfiguration类实现了WebMvcConfigurer,具体如下:

import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.CorsRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;

@SuppressWarnings("deprecation")
@Configuration
public class MyConfiguration implements WebMvcConfigurer {
    @Override
    public void addCorsMappings(CorsRegistry registry) {
        registry.addMapping("/**")
                .allowedMethods("GET","POST","DELETE","PUT","OPTIONS") //允许的请求类型
                //允许携带头信息(该处为所有头信息,可根据自己的需求修改)
                .allowedHeaders("*")
                .allowedOrigins("*")
                .maxAge(3600);
    }
}

在后端重写addCorsMappings方法成功解决了delete的跨域问题

三. 解决响应头中携带set-cookie,但是cookie无法存在浏览器application中

使用cookie是希望浏览器保存,在后续请求中,携带cookie发送至后台
我尝试直接将cookie加在response中,但是浏览器application还是无法查看到

  1. 前端要设置withCredentails
    在axios配置文件中添加withCredentials: true,此属性可实现在后续的请求中均携带cookie,发送至后台
    2.后端要设置allowCredentials和allowOrigin
    在这里插入图片描述
    注意:一旦前端设置了withCredentials属性,后端也必须对应设置allowCredentials为true;此外allowOrigins必须设置为源地址,如果是设置为*是无效的。

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

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

相关文章

PHP转Go系列 | 字符串的使用姿势

大家好&#xff0c;我是码农先森。 输出 在 PHP 语言中的输出比较简单&#xff0c;直接使用 echo 就可以。此外&#xff0c;在 PHP 中还有一个格式化输出函数 sprintf 可以用占位符替换字符串。 <?phpecho 码农先森; echo sprintf(码农:%s, 先森);在 Go 语言中调用它的输…

pikachu靶场之XSS漏洞测试

一、环境配置 1.pikachu官网下载 下载地址&#xff1a;https://github.com/zhuifengshaonianhanlu/pikachu 2.百度网盘&#xff08;里面含有pikachu跟phpstudy&#xff09; 链接&#xff1a;pikachu下载 密码&#xff1a;abcd 配置&#xff1a;pikachu下载及安装-图文详解…

14K屏FPGA通过MIPI接口点亮

一、屏参数 屏分辨率为13320*5120&#xff0c;MIPI接口8 LANE。 二、驱动接口电路 屏偏置电压5.5V&#xff0c;逻辑供电1.8V。8 LANE MIPI&#xff0c;2 PORT。 三、MIPI DSI规范 DCS (Display Command Set)&#xff1a;DCS是一个标准化的命令集&#xff0c;用于命令模式的显…

基于单片机的智能窗户控制系统的设计

摘 要&#xff1a; 根据单片机技术和现代传感器技术 &#xff0c; 本文主要针对基于单片机的智能窗户控制系统的设计进行探讨 &#xff0c; 仅供参考 。 关键词&#xff1a; 单片机 &#xff1b; 智能窗户 &#xff1b; 控制系统 &#xff1b; 设计 在现代科学技术持续发展的带…

融资融券两融利率最低多少?两融利率最低账户怎么申请?

融资融券账户余额理财技巧 融资融券账户不支持货币基金申赎、逆回购等业务&#xff0c;投资者可以将资金大于维保比例300%的部分通过银证转账转出再转入到普通账户&#xff0c;参与证券公司现金理财或逆回购等业务。 融券卖出和还券技巧 融券卖出所得的资金仅能用于买券还券&…

Linux操作系统学习:day05

内容来自&#xff1a;Linux介绍 视频推荐&#xff1a;[Linux基础入门教程-linux命令-vim-gcc/g -动态库/静态库 -makefile-gdb调试]( 目录 day0530、删除用户31、添加和删除用户组创建用户组删除用户组 32、修改密码33、使用tar工具进行压缩和解压缩压缩解压缩 34、使用zip u…

▶《强化学习的数学原理》(2024春)_西湖大学赵世钰 Ch4 值迭代 与 策略迭代 【动态规划 算法】

PPT 截取必要信息。 课程网站做习题。总体 MOOC 过一遍 1、视频 学堂在线 习题 2、过 电子书 补充 【下载&#xff1a; 本章 PDF 电子书 GitHub】 [又看了一遍视频。原来第一次跳过了好多内容。。。] 3、总体 MOOC 过一遍 习题 学堂在线 课程页面链接 中国大学MOOC 课程页面链…

【宠粉赠书】科技图表绘制:R语言数据可视化

为了回馈粉丝们的厚爱&#xff0c;今天小智给大家送上一套科研绘图的必备书籍——《R语言数据可视化&#xff1a;科技图表绘制》。下面我会详细给大家介绍这套图书&#xff0c;文末留有领取方式。 图书介绍 《R语言数据可视化&#xff1a;科技图表绘制》结合编者多年的数据分析…

jenkins安装和使用 (二)

参考视频资料 https://www.bilibili.com/video/BV1bS4y1471A?p10&vd_sourcee0dcd147bd5d730317de804d788cd6f9 安装maven插件 新建item 配置构建信息 项目地址替换为自己的实际地址 其余保持先保持默认 先然后在主页就看到了这个项目 查看控制台输出 稍等一…

Java 17的新特性

Java 17引入了多项新特性&#xff0c;以下是一些重要的更新&#xff1a; 增强的伪随机数生成器&#xff08;JEP 356&#xff09; Java 17为伪随机数生成器&#xff08;PRNG&#xff09;提供了新的接口类型和实现&#xff0c;包括可跳转的PRNG和另一类可拆分的PRNG算法&#xf…

聊聊 Mybatis 动态 SQL

这篇文章&#xff0c;我们聊聊 Mybatis 动态 SQL &#xff0c;以及我对于编程技巧的几点思考 &#xff0c;希望对大家有所启发。 1 什么是 Mybatis 动态SQL 如果你使用过 JDBC 或其它类似的框架&#xff0c;你应该能理解根据不同条件拼接 SQL 语句有多痛苦&#xff0c;例如拼…

得物面试:什么是零复制?说说 零复制 底层原理?(吊打面试官)

尼恩说在前面 在40岁老架构师 尼恩的读者交流群(50)中&#xff0c;最近有小伙伴拿到了一线互联网企业如得物、阿里、滴滴、极兔、有赞、希音、百度、网易、美团的面试资格&#xff0c;遇到很多很重要的零复制的问题&#xff1a; 说一说Rocketmq、是如何实现每秒上百万数据的超…

ACIS采用自底向上的方式创建box

在学习任何CAD几何内核的时候&#xff0c;首先需要学习的是这个几何内核的几何拓扑数据结构&#xff0c;学习完毕后&#xff0c;一个很好的练习是自己采用底层的几何、拓扑构建API&#xff0c;创建一个box。通过这个练习&#xff0c;可以加深初学者对所学几何内核数据结构的理解…

AXI三板斧之Outstanding、Out-of-order、interleaving

1、AXI三板斧之Outstanding 可以不用等单个命令的响应&#xff0c;直接连续发送N个命令&#xff08;N>1&#xff09;&#xff0c;假设Slave端的Outstanding能力为N时&#xff08;N>1&#xff09;&#xff0c;那么Master端可以在Slave不返回读数据的情况下&#xff0c;连…

从小白到大神:算法工程师的核心竞争力养成计划!

从小白到大神&#xff1a;算法工程师的核心竞争力养成计划&#xff01; 我们会发现&#xff0c;本科及研究生所学的知识&#xff0c;比如高等数学、线性代数、传统机器学习方法及深度学习理论等这些&#xff0c;都只是作为算法学习的基础&#xff0c;并不能成为算法工程师的核…

React@16.x(34)动画(中)

目录 3&#xff0c;SwitchTransition3.1&#xff0c;原理3.1.2&#xff0c;key3.1.2&#xff0c;mode 3.2&#xff0c;举例3.3&#xff0c;结合 animate.css 4&#xff0c;TransitionGroup4.1&#xff0c;其他属性4.1.2&#xff0c;appear4.1.2&#xff0c;component4.1.3&…

【Python】对应接口url 被编码后的处理

Python 系列 文章目录 Python 系列前言一、网页链接是什么&#xff1f;二、使用步骤1.解码 总结 前言 提示&#xff1a;这里可以添加本文要记录的大概内容&#xff1a; 我们在查找网页的开发代码的时候&#xff0c;可能经常查看到接口的链接是&#xff1a; %7B%22funName%22%…

昇思25天学习打卡营第1天|快速入门

一、简介&#xff1a; 本节通过MindSpore已经封装好的API&#xff0c;快速实现一个深度学习模型的数据集准备、训练评估&#xff0c;模型参数保存和加载&#xff0c;对新手朋友十分友好。这里非常感谢华为昇思团队在算力和代码方面的指导。 二、环境准备&#xff1a; 在开始…

YOLOv10改进 | Conv篇 |YOLOv10引入DBB卷积(助力涨点)

1. DBB介绍 1.1 摘要:我们提出了卷积神经网络(ConvNet)的通用构建块来提高性能,而无需任何推理时间成本。 该块被称为多样化分支块(DBB),它通过组合不同尺度和复杂度的不同分支来丰富特征空间,从而增强单个卷积的表示能力,包括卷积序列、多尺度卷积和平均池化。 训练后…

参花实业增收不增利:曾被执行近3000万,资产负债比率高达166%

《港湾商业观察》廖紫雯 日前&#xff0c;参花实业控股有限公司&#xff08;以下简称&#xff1a;参花实业&#xff09;再度递表港交所&#xff0c;保荐机构为中泰国际&#xff0c;参花实业国内运营主体为固安县参花面粉有限公司、廊坊固安县参花企业管理有限公司。 作为一家…