Vue 项目中遇到的跨域问题及解决方法(后台php)


Posted in Javascript onMarch 28, 2018

问题描述

前端 vue 框架,后台 php,百度跨域问题后台加这段代码

header("Access-Control-Allow-Origin: *");

加了之后报这个错:

The value of the 'Access-Control-Allow-Origin' header in the response must not be the wildcard '*' when the request's credentials mode is 'include'.
The value of the 'Access-Control-Allow-Origin' header in the response must not be the wildcard '*' when the request's credentials mode is 'include'.

Vue 项目中遇到的跨域问题及解决方法(后台php)

解决办法

文章链接:CORS: credentials mode is ‘include'

xhrFields: {
 withCredentials: false
},

withCredentials: true 改成 withCredentials: false,如果你没加上面那段代码当然也不会报这个错。虽然是解决方法很简单,但经此发现许多知识没掌握不得不梳理下。

•HTTP 请求方式有许多种,有些请求会触发 CORS 预检请求。“需预检的请求”会使用 OPTIONS 方法发起一个预检请求到服务器,以获知服务器是否允许该实际请求。

•对于跨域请求浏览器一般不会发送身份凭证信息。如果要发送凭证信息,需要设置 XMLHttpRequest 的 withCredentials 属性为 true:withCredentials: true。此时要求服务器的响应信息中携带 Access-Control-Allow-Credentials: true,否则响应内容将不会返回。

•对于携带身份凭证的请求,服务器不得设置 Access-Control-Allow-Origin 的值为“*”。因为请求头携带了 Cookie 信息。要将 Access-Control-Allow-Origin 的值设置为 http://www.zrt.local:8080。

•另外,响应头中也携带了 Set-Cookie 字段,尝试对 Cookie 进行修改。如果操作失败,将会抛出异常。

跨域请求想要带上 cookies 必须在请求头里面加上:

crossDomain: true, 
xhrFields: {
  withCredentials: true
}

又变成文章开头的问题了,解决办法:

后台代码:

Access-Control-Allow-Origin: 'http://www.zrt.local:8080'
Access-Control-Allow-Credentials: true

前端代码:

crossDomain: true, 
xhrFields: {
  withCredentials: true
}

跟之前一样就行了。

总结

以上所述是小编给大家介绍的Vue 项目中遇到的跨域问题及解决方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
nicejforms——美化表单不用愁
Feb 20 Javascript
jQuery生成asp.net服务器控件的代码
Feb 04 Javascript
Jquery cookie操作代码
Mar 14 Javascript
在浏览器中实现图片粘贴的jQuery插件-- pasteimg使用指南
Dec 29 Javascript
Summernote实现图片上传功能的简单方法
Jul 11 Javascript
jQuery实现的自动加载页面功能示例
Sep 04 Javascript
create-react-app 修改为多入口编译的方法
Aug 01 Javascript
vue+element-ui动态生成多级表头的方法
Aug 28 Javascript
vue实现点击选中,其他的不选中方法
Sep 05 Javascript
微信上传视频文件提示(推荐)
Nov 22 Javascript
jquery+css3实现的经典弹出层效果示例
May 16 jQuery
微信小程序实现watch监听
Jun 04 Javascript
浅谈React高阶组件
Mar 28 #Javascript
vue数据控制视图源码解析
Mar 28 #Javascript
jQuery+ajax读取json数据并按照价格排序示例
Mar 28 #jQuery
vue 开发一个按钮组件的示例代码
Mar 27 #Javascript
vue-cli脚手架-bulid下的配置文件
Mar 27 #Javascript
vue2中使用less简易教程
Mar 27 #Javascript
浅谈Vue内置component组件的应用场景
Mar 27 #Javascript
You might like
php的ajax框架xajax入门与试用介绍
2010/12/19 PHP
php file_put_contents()功能函数(集成了fopen、fwrite、fclose)
2011/05/24 PHP
php数组合并array_merge()函数使用注意事项
2014/06/19 PHP
PHP导出带样式的Excel示例代码
2016/08/28 PHP
Javascript YUI 读码日记之 YAHOO.util.Dom - Part.3
2008/03/22 Javascript
jquery 双色表格实现代码
2009/12/08 Javascript
深入理解javascript学习笔记(一) 编写高质量代码
2012/08/09 Javascript
javascript实现动态导入js与css等静态资源文件的方法
2015/07/25 Javascript
解决jQuery uploadify在非IE核心浏览器下无法上传
2015/08/05 Javascript
详解JavaScript中的属性和特性
2016/12/08 Javascript
js 原生判断内容区域是否滚动到底部的实例代码
2017/11/15 Javascript
Vue调试神器vue-devtools安装方法
2017/12/12 Javascript
解决js相同的正则多次调用test()返回的值却不同的问题
2018/10/10 Javascript
VUE-cli3使用 svg-sprite-loader
2018/10/20 Javascript
angular4中引入echarts的方法示例
2019/01/29 Javascript
详解在Angular4中使用ng2-baidu-map的方法
2019/06/19 Javascript
javascript+css实现进度条效果
2020/03/25 Javascript
[54:29]2018DOTA2亚洲邀请赛 4.7 淘汰赛 VP vs LGD 第二场
2018/04/09 DOTA
Python 字符串操作实现代码(截取/替换/查找/分割)
2013/06/08 Python
python判断字符串编码的简单实现方法(使用chardet)
2016/07/01 Python
Python比较2个时间大小的实现方法
2018/04/10 Python
python 筛选数据集中列中value长度大于20的数据集方法
2018/06/14 Python
解决Python print输出不换行没空格的问题
2018/11/14 Python
Python 存储字符串时节省空间的方法
2019/04/23 Python
Django中在xadmin中集成DjangoUeditor过程详解
2019/07/24 Python
python修改微信和支付宝步数的示例代码
2020/10/12 Python
解决Pymongo insert时会自动添加_id的问题
2020/12/05 Python
HTML5 CSS3给网站设计带来出色效果
2009/07/16 HTML / CSS
纯HTML5+CSS3制作生日蛋糕(代码易懂)
2016/11/16 HTML / CSS
viagogo意大利票务平台:演唱会、体育比赛、戏剧门票
2018/01/26 全球购物
Linux机考试题
2015/10/16 面试题
12岁生日演讲稿
2014/05/14 职场文书
机械专业应届毕业生自荐书
2014/06/12 职场文书
小学入学感言
2015/08/01 职场文书
喜迎建国70周年:有关爱国的名言名句
2019/09/24 职场文书
基于python制作简易版学生信息管理系统
2021/04/20 Python