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 相关文章推荐
纯JavaScript实现的完美渐变弹出层效果代码
Apr 02 Javascript
jquery json 实例代码
Dec 02 Javascript
js判断游览器类型及版本号的代码
May 11 Javascript
JavaScript中使用concat()方法拼接字符串的教程
Jun 06 Javascript
js简单实现表单中点击按钮动态增加输入框数量的方法
Aug 18 Javascript
easyUI实现类似搜索框关键词自动提示功能示例代码
Dec 27 Javascript
详解angular2封装material2对话框组件
Mar 03 Javascript
详解如何构建Angular项目目录结构
Jul 13 Javascript
webpack多入口文件页面打包配置详解
Jan 09 Javascript
jQuery实现为动态添加的元素绑定事件实例分析
Sep 07 jQuery
Vue cli3 库模式搭建组件库并发布到 npm的流程
Oct 12 Javascript
VUE使用draggable实现组件拖拽
Apr 06 Vue.js
浅谈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 中文处理技巧
2010/04/25 PHP
最新用php获取谷歌PR值算法,附上php查询PR值代码示例
2011/12/25 PHP
利用phpExcel实现Excel数据的导入导出(全步骤详细解析)
2013/11/26 PHP
PHP对象链式操作实现原理分析
2016/10/09 PHP
Laravel中七个非常有用但很少人知道的Carbon方法
2017/09/21 PHP
详解PHP字符串替换str_replace()函数四种用法
2017/10/13 PHP
慎用 somefunction.prototype 分析
2009/06/02 Javascript
JavaScript OOP类与继承
2009/11/15 Javascript
用jquery模仿的a的title属性(兼容ie6/7)
2013/01/21 Javascript
关于jquery css的使用介绍
2013/04/18 Javascript
javascript向后台传送相同属性的参数即数组参数
2014/02/17 Javascript
ff chrome和ie下全局动态定位的异同及全局高度的取法
2014/06/30 Javascript
解决bootstrap中modal遇到Esc键无法关闭页面
2015/03/09 Javascript
angularJS Provider、factory、service详解及实例代码
2016/09/21 Javascript
JS ES6多行字符串与连接字符串的表示方法
2017/04/26 Javascript
JS去掉字符串前后空格、阻止表单提交的实现代码
2017/06/08 Javascript
js学习总结_基于数据类型检测的四种方式(必看)
2017/07/04 Javascript
JS获取当前地理位置的方法
2017/10/25 Javascript
基于vue中对鼠标划过事件的处理方式详解
2018/08/22 Javascript
react组件从搭建脚手架到在npm发布的步骤实现
2019/01/09 Javascript
vue中过滤器filter的讲解
2019/01/21 Javascript
JavaScript实现图片的放大缩小及拖拽功能示例
2019/05/14 Javascript
微信小程序tab左右滑动切换功能的实现代码
2021/02/08 Javascript
[49:08]FNATIC vs Infamous 2019国际邀请赛小组赛 BO2 第二场 8.16
2019/08/18 DOTA
Python类的专用方法实例分析
2015/01/09 Python
Python中的os.path路径模块中的操作方法总结
2016/07/07 Python
使用PyInstaller将Python程序文件转换为可执行程序文件
2016/07/08 Python
利用python画一颗心的方法示例
2017/01/31 Python
Python 中Django安装和使用教程详解
2019/07/03 Python
django框架ModelForm组件用法详解
2019/12/11 Python
pytorch之添加BN的实现
2020/01/06 Python
Kneipp克奈圃美国官网:德国百年精油配方的传承
2018/02/07 全球购物
教学大赛获奖感言
2014/01/15 职场文书
个人反四风对照检查材料思想汇报
2014/09/23 职场文书
2014年有孩子的离婚协议书范本
2014/10/08 职场文书
使用HTML+Css+transform实现3D导航栏的示例代码
2021/03/31 HTML / CSS