VUE开发报错之No 'Access-Control-Allow-Origin' header is present on the requested resource.

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/xingkongtianma01/article/details/80817141

近来被领导安排去做前端帮忙,使用的是VUE+elementUI。

今天完成修改密码功能时,出现如下问题:

Failed to load http://xxxxxxxxx/motifyUserPwd: No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://localhost:8080' is therefore not allowed access. The response had HTTP status code 401.


百度一下,很多人都说是跨域的问题,可是跟前端负责人沟通,说是 ,后台已经解决了这个跨域问题。

后台负责人反馈说是提交的数据少了token。后来自己调出控制台(F12)


发现  Authorization  这一项为空的

原因:

在使用ajax提交数据时,少了一行代码

let that = this.$router; //获取路由对象信息

  

加上之后,重新登录,再次点击修改密码



问题完美解决。

备注:通过截图我们会发现有两次请求,原因:在使用Ajax跨域请求时,如果设置Header的ContentType为application/json,会分两次发送请求。第一次先发送Method为OPTIONS的请求到服务器,这个请求会询问服务器支持哪些请求方法(GET,POST等),支持哪些请求头等等服务器的支持情况。等到这个请求返回后,如果原来我们准备发送的请求符合服务器的规则,那么才会继续发送第二个请求,否则会在Console中报错。

            
阅读更多

没有更多推荐了,返回首页