当前位置: 首页 > news >正文

本地跑项目解决跨域问题

跨域问题:

指的是浏览器不能执行其他网站的脚本,它是由浏览器的同源策略造成的,是浏览器对 javascript 施加的安全限制。

同源策略:

是指协议(protocol)、域名(host)、端口号(port),都必须相同,其中一个不同都会产生跨域。

www.test.com:8000 协议(http)、主域名(test)、子域名(www)、端口号(8000)

非同源限制

无法读取非同源网页的cookie、localStorage、IndexedDB

无法接触非同源网页的DOM

无法向非同源地址发送 AJAX 请求

方法一:配置代理

nginx配置代理

前端端口4200,后端端口8083,统一在代理中配置一个监听端口

server {listen 80;  location / {proxy_set_header    Host $host;proxy_set_header    X-Forwarded-For $proxy_add_x_forwarded_for;proxy_pass          http://localhost:4200;add_header          Access-Control-Allow-Origin *;proxy_set_header X-Real-IP $remote_addr;proxy_set_header X-NginX-Proxy true;}location /api/ {  proxy_pass http://localhost:8083;  proxy_set_header Host $host;  proxy_set_header X-Real-IP $remote_addr;  # 添加允许跨域的配置  add_header Access-Control-Allow-Origin *;  add_header Access-Control-Allow-Credentials true;  add_header Access-Control-Allow-Methods GET,POST,PUT,DELETE,OPTIONS;  add_header Access-Control-Allow-Headers X-Requested-With,Content-Type,Content-Length,Accept,Authorization;  }  }

方法二:后端配置

写一个关于跨域的配置类CorsConfig

@Configuration // 一定不能忽略此注解public class CorsConfig {@Beanpublic CorsFilter corsFilter() {// 1.创建 CORS 配置对象CorsConfiguration config = new CorsConfiguration();// 支持域config.addAllowedOrigin("*");// 是否发送 Cookieconfig.setAllowCredentials(true);// 支持请求方式config.addAllowedMethod("*");// 允许的原始请求头部信息config.addAllowedHeader("*");// 2.添加地址映射UrlBasedCorsConfigurationSource corsConfigurationSource = new UrlBasedCorsConfigurationSource();corsConfigurationSource.registerCorsConfiguration("/**", config);// 3.返回 CorsFilter 对象return new CorsFilter(corsConfigurationSource);}}

http://www.lryc.cn/news/228309.html

相关文章:

  • 聊聊logback的isDebugEnabled
  • ChatGPT+Roblox,元宇宙的AI叙事逻辑#Leveling Up
  • Spark算子
  • Containerd接入Harbor仓库
  • Angular 组件介绍及使用(一)
  • 2023.11.13 hive数据仓库之分区表与分桶表操作,与复杂类型的运用
  • Spring Cloud学习(七)【Docker 容器】
  • 好题分享(2023.11.5——2023.11.11)
  • 第二章 03Java基础-IDEA相关叙述
  • 第三阶段第二章——Python高阶技巧
  • 【Git】Git分支与应用分支Git标签与应用标签
  • 本地PHP搭建简单Imagewheel私人云图床,在外远程访问——“cpolar内网穿透”
  • HCIP---OSPF思维导图
  • Python实现猎人猎物优化算法(HPO)优化XGBoost回归模型(XGBRegressor算法)项目实战
  • pandas读写json的知识点
  • 图论——Dijkstra算法matlab代码
  • [MySQL] MySQL表的基础操作
  • SQL 部分解释。
  • 利用LangChain实现RAG
  • 零基础学习Matlab,适合入门级新手,了解Matlab
  • CCF ChinaSoft 2023 论坛巡礼 | 自动驾驶仿真测试论坛
  • vue封装useWatch hook支持停止监听和重启监听功能
  • 智能配方颗粒管理系统解决方案,专业实现中医药产业数字化-亿发
  • PXI总线测试模块-6951E 信号分析仪
  • 精确杂草控制植物检测模型的改进推广
  • C++:对象成员方法的使用
  • 深入了解SpringMvc接收数据
  • 华东“启明”青少年音乐艺术实践中心揭幕暨中国“启明”巴洛克合奏团首演音乐会
  • 17. 机器学习——SVM
  • 算法导论笔记5:贪心算法