首页 > 编程知识 正文

vue跨域请求报500错误,axios跨域访问

时间:2023-05-05 18:30:01 阅读:25638 作者:3313

现在,我将向您介绍如何解决axios跨域请求错误,以及如何解决axios跨域请求错误。 介绍实战事例。 请一起看。

responsetopreflightrequestdoesn ' tpassaccesscontrolcheck : no ' access-control-allow-origin ' headerispresentonthereqtheqion reforenotallowedaccess.theresponsehadhttpstatuscode 403

随着前端框架的发展,当前前端数据分离已成为一种趋势。 这意味着前端只需要在ajax上请求后端数据合成页,后端就可以提供数据接口并提供数据。 好处是,前端程序员不再需要在自己的本地构建Web服务器,前端也不再需要了解后端语法。 这样可以简化开发配置,也降低协作的难度。

常规的GET、POST、PUT和DELETE请求是简单的请求,但OPTIONS有点特别。 请先发送请求并询问服务器。 要么你帮我申请,要么我把数据发给你。 (这是完全根据自己的理解写的。 如果错了的话,请谅解。 请参考高兴的流沙大神原文。 )

在Vue的项目中,Http服务采用了Axios,但它采用了OPTIONS请求。

只在header中输入' Access-Control-Allow-Origin':*并不能解决问题。 错误如开头所示。

这里需要在后台请求选项进行附加处理。

本文以Spring MVC为例。

添加阻止程序类。 publicclassprocessinterceptorimplementshandlerinterceptor {

@Override

publicbooleanprehandle (httpservletrequesthttpservletrequest,httpservletresponsehttpservletresponse,Object o ) ) throwsexccexcccte

htpservletresponse.setheader (' access-control-allow-origin ',' * ' );

htpservletresponse.setheader (访问控制-全局-头)、内容类型、内容长度、授权

htpservletresponse.setheader (访问控制多种方法)、) PUT、POST、GET、DELETE、OPTIONS );

htpservletresponse.setheader (x-powered-by )、Jetty );

字符串方法=http servlet request.get method (;

if(method.equals(options ) ) }

htpservletresponse.set status (200;

返回假;

}

system.out.println(method );

返回真;

}

@Override

publicvoidposthandle (httpservletrequesthttpservletrequest,httpservletresponsehttpservletresponse,对象o,modelandviewmmer

}

@Override

publicvoidaftercompletion (httpservletrequesthttpservletrequest,httpservletresponsehtpservletresponse,Object o,exceptiopsere

}

}

要在Spring-mvx.xml中配置spring阻止程序:

这样,问题就解决了:

看了这篇报道的事例,我相信你掌握了方法。 更棒。 请关注php中文网的其他相关文章。

请阅读:

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。