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

网站 管理系统常见的网络营销平台有哪些

网站 管理系统,常见的网络营销平台有哪些,高端品牌网站建设注意事项,中台网站开发在 Spring Boot 中解决跨域问题(CORS)主要有三种常用方式,下面详细说明每种实现方法: 方案一:全局配置(推荐) 在配置类中实现 WebMvcConfigurer 接口,统一配置所有接口的跨域规则&am…

在 Spring Boot 中解决跨域问题(CORS)主要有三种常用方式,下面详细说明每种实现方法:

方案一:全局配置(推荐)

在配置类中实现 WebMvcConfigurer 接口,统一配置所有接口的跨域规则:

import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.CorsRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;@Configuration
public class CorsConfig implements WebMvcConfigurer {@Overridepublic void addCorsMappings(CorsRegistry registry) {registry.addMapping("/**")  // 所有接口// Spring Boot 2.4+ 使用 allowedOriginPatterns.allowedOriginPatterns("*") // 允许的请求方法.allowedMethods("GET", "POST", "PUT", "DELETE", "OPTIONS") // 允许的请求头.allowedHeaders("*") // 是否允许发送Cookie.allowCredentials(true) // 预检请求缓存时间(秒).maxAge(3600); }
}

方案二:控制器注解配置

在单个控制器或方法上使用 @CrossOrigin 注解:

import org.springframework.web.bind.annotation.CrossOrigin;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;@RestController
// 类级别配置(整个控制器生效)
@CrossOrigin(origins = "http://localhost:8080", allowCredentials = "true")
public class UserController {// 方法级别配置(覆盖类配置)@GetMapping("/users")@CrossOrigin(maxAge = 1800)public List<User> getUsers() {return userService.getAllUsers();}
}

方案三:过滤器配置(适合WebFlux或特殊需求)

创建自定义CORS过滤器:

import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.cors.CorsConfiguration;
import org.springframework.web.cors.UrlBasedCorsConfigurationSource;
import org.springframework.web.filter.CorsFilter;@Configuration
public class GlobalCorsConfig {@Beanpublic CorsFilter corsFilter() {CorsConfiguration config = new CorsConfiguration();// 允许所有域名(生产环境建议指定具体域名)config.addAllowedOriginPattern("*");// 允许发送Cookieconfig.setAllowCredentials(true);// 允许所有请求头config.addAllowedHeader("*");// 允许所有方法config.addAllowedMethod("*");// 预检请求缓存时间config.setMaxAge(3600L);UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource();source.registerCorsConfiguration("/**", config);return new CorsFilter(source);}
}

常见问题解决方案

  1. Credentials 与 Origin 冲突问题

    • 现象:前端携带 Cookie 时报错
    • 解决:
      // 正确配置
      .allowCredentials(true)
      // 使用 allowedOriginPatterns 替代 allowedOrigins
      .allowedOriginPatterns("http://trusted-domain.com") 
      
    • 前端配合:
      fetch(url, {credentials: 'include' // 必须
      })
      
  2. Spring Security 集成问题
    在 Security 配置中启用 CORS:

    @Override
    protected void configure(HttpSecurity http) throws Exception {http.cors() // 启用 CORS.and()// ... 其他安全配置
    }
    
  3. OPTIONS 请求被拦截

    • 确保未手动拦截 OPTIONS 方法
    • 在 Security 配置中添加:
      .antMatchers(HttpMethod.OPTIONS).permitAll()
      
  4. 多配置冲突

    • 优先级:过滤器 > 全局配置 > @CrossOrigin
    • 建议整个项目统一使用一种配置方式

最佳实践建议

  1. 开发环境
    使用全局配置 + allowedOriginPatterns("*") 快速开发

  2. 生产环境

    .allowedOriginPatterns("https://your-domain.com","https://api.your-domain.com"
    )
    
  3. 安全加固

    // 限制允许的请求头
    .allowedHeaders("Content-Type", "X-Requested-With", "Authorization")
    // 暴露特定响应头
    .exposedHeaders("Custom-Header")
    

重要提示

  • Spring Boot 2.4.x+ 必须使用 allowedOriginPatterns 替代旧版 allowedOrigins
  • 开启 allowCredentials(true) 时,禁止使用 allowedOriginPatterns("*")(浏览器安全限制),应指定具体域名
http://www.dtcms.com/wzjs/234051.html

相关文章:

  • php 网站建设流程软件定制开发
  • 如何自制作网站产品营销方案策划书
  • 广东网站设计公司价格电商运营方案
  • 杭州专业做网站的公司哪家好滕州seo
  • 网站整套模板项目代码下载重庆关键词优化软件
  • 青岛做企业网站的公司手机优化专家下载
  • 网站面试通知表格怎么做北京互联网公司有哪些
  • 高级网站建设费用苏州网站排名推广
  • 自己的电脑做网站云存储痘痘怎么去除效果好
  • wordpress添加目录企业seo推广
  • 翻译网站建设方案营销策划的概念
  • 柳州哪家公司做网站好湖南好搜公司seo
  • 企业手机网站建设需要注意哪些如何让自己的网站快速被百度收录
  • 网站的交互怎么做如何建网址
  • 微商城网站建设skr搜索引擎入口
  • 宜昌市住房城乡建设网站seo网站优化课程
  • 网站进度条做多大seo网站推广费用
  • 设计了网站首页网站竞价推广怎么做
  • 做外单网站有哪些友情链接地址
  • 福安网站建设排名优化公司哪家靠谱
  • 中国建设银行网站个人客户做网站的费用
  • 怎么做自己的网购网站南阳seo
  • 开发区人才seo在线诊断工具
  • 营销型b2b网站模板提高网站排名
  • 充值网站 模板长尾词挖掘工具
  • 坪山商城网站建设哪家公司靠谱百度一下你就知道官网百度
  • 网站制作钱代做百度首页排名
  • 专门做搜索种子的网站有哪些外链屏蔽逐步解除
  • 十一冶建设集团有限责任公司网站宁波seo软件免费课程
  • 网站开发的架构做小程序的公司