vue用axios进行token请求出现has been blocked by CORS policy: No ‘Access-Control-Allow-Origin‘ header的解决方案

在Vue项目中使用axios进行API请求时遇到了CORS错误:'Access-Control-Allow-Origin' header缺失导致请求被阻止。该问题源于前后端不同端口引起的跨域访问。尝试使用@CrossOrigin注解解决,但未成功。解决跨域问题需要正确配置允许跨域的响应头。
摘要由CSDN通过智能技术生成

遇到的问题一

Access to XMLHttpRequest at ‘http://localhost:8081/order/no’ from origin ‘http://localhost:8080’ has been blocked by CORS policy: No ‘Access-Control-Allow-Origin’ header is present on the requested resource.

翻译:通过CORS策略已阻止从源"http:// localhost:8080"访问"http:// localhost:8081/order/no"处的XMLHttpRequest:所请求的资源上不存在"Access-Control-Allow-Origin"标头。

理解:因为vue跟后端服务的端口不一样,所以访问就是跨域访问,它要求访问的请求头里有Access-Control-Allow-Origin,而这个不配置就没有

解决的方法

@Configuration
@EnableWebSecurity
public class WebSecurityConfig extends WebSecurityConfigurerAdapter {
   
    @Override
    protected void configure(HttpSecurity http) throws Exception {
   
        http.csrf().disable(); //开启跨域访问
        http.cors(); //开启跨域资源共享
    }
}
  • 也许这个解决方法有效但我并没成功用它解决问题:@CrossOrigin注解 *
@CrossOrigin(allowedHeaders = {
   "Authorization"})
@GetMapping("/res")
public ResponseResult<List<vongCover>> pages(){
   
        return new ResponseResult<List<vongCover>
"'http://localhost:8080' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource." 表示在请求的资源上没有提供 'Access-Control-Allow-Origin' 头,导致该资源无法被访问。这是由于浏览器的同源策略所引起的安全限制。同源策略要求AJAX请求只能在同一域名下进行访问,如果请求的资源位于不同的域名下,并且服务器没有设置允许跨域访问的响应头('Access-Control-Allow-Origin'),浏览器会拦截这个请求,阻止其访问。 为了解决这个问题,你可以在服务端设置响应头,允许特定的域名访问该资源。可以通过在响应头中添加 'Access-Control-Allow-Origin' 字段,并将其值设置为请求的域名,即允许该域名跨域访问该资源。如果允许多个域名访问该资源,可以使用通配符 '*' 来设置 'Access-Control-Allow-Origin' 的值。 另外,还可以设置其他的CORS相关的响应头,例如 'Access-Control-Allow-Methods' 用于指定允许的请求方法, 'Access-Control-Allow-Headers' 用于指定允许的请求头,以及 'Access-Control-Max-Age' 用于指定预检请求的缓存时间等。 请注意,在生产环境中,确保仅允许信任的域名跨域访问资源,以保护系统的安全性。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [vueaxios进行token请求出现has been blocked by CORS policy: No ‘Access-Control-Allow-Origin‘ ...](https://blog.csdn.net/FHlang/article/details/115770129)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *2* [has been blocked by CORS policy: No ‘Access-Control-Allow-Originheader is present on the ...](https://blog.csdn.net/qq_45800640/article/details/118422632)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值