vue框架下通过axios进行post异步处理,但是报错信息:

Access to XMLHttpRequest at 'localhost:8899/book/add' from origin 'http://localhost:8080' has been blocked by CORS policy: Cross origin requests are only supported for protocol schemes: http, data, isolated-app, chrome-extension, chrome-untrusted, https, edge.

 一直以为是跨域的问题,配置了后端的跨域配置类,也做了相关的代码修改。但一直出现该问题。

后来发现报错信息是提示识别这个路径地址的时候不支持,需要以规定的范围才行,后来才检查到原因是地址路径没有写完整。

最开始写的axios内容是:

// 调用异步post方法,传入路径和参数,中间用,隔开,.then是返回的方法
        axios.post("localhost:8899/book/add",_this.ruleForm).then(function(resp){
          console.log(resp.data)
        });

 这样写的时候没有加入http请求,导致出现跨域报错。

正确写法应该是把http请求加入

// 调用异步post方法,传入路径和参数,中间用,隔开,.then是返回的方法
        axios.post("http://localhost:8899/book/add",_this.ruleForm).then(function(resp){
          console.log(resp.data)
        });

以上

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐