VUE开发报错之No 'Access-Control-Allow-Origin' header is present on the requested resource.
近来被领导安排去做前端帮忙,使用的是VUE+elementUI。今天完成修改密码功能时,出现如下问题:Failed to load http://xxxxxxxxx/motifyUserPwd: No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://localhost
近来被领导安排去做前端帮忙,使用的是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中报错。
更多推荐
所有评论(0)