vue使用axios联调时候出现Access to XMLHttpRequest at 'http://127.0.0.1/.......' from origin 'http://localhost:8080' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource.的错误,这个是由于跨域问题。
跨域问题主要是网络协议、域名和端口号引起的浏览器安全策略问题而使得数据被拦截,可以前端解决也可以后端解决,在做vue和php联调后台管理系统的时候小心一点。
解决方法:(这里是用后台cros方法处理)
在thinkphp的入口文件——“.../public/index.php”下面加入以下代码:
// 设置允许其他域名访问
header('Access-Control-Allow-Origin:*');
// 设置允许的响应类型
header('Access-Control-Allow-Methods:POST, GET');
// 设置允许的响应头
header('Access-Control-Allow-Headers:x-requested-with,content-type');
然后前端vue的axios再请求一次,这次的结果:成功!!