如a.123.com跨域访问b.123.com、

b.123.com服务器使用nginx允许跨域,Access-Control-Allow-Origin:*

如果a、b服务不在同一个服务器

前台页面请求报错信息为:

Access to XMLHttpRequest at 'http://b.123.com'
from origin 'http://a.123.com' has been blocked by CORS policy:
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 credentials mode of requests initiated by the XMLHttpRequest is controlled by the withCredentials attribute.

对应ajax请求为:


$.ajax({url : 'http://b.123.com/request',data : data,dataType: 'json',type : 'POST',xhrFields: {withCredentials: true},crossDomain: true,...

此时,应取消nginx设置的跨域*,改成代码端设置。且代码服务器端通过在响应 header 中设置

response.setHeader("Access-Control-Allow-Credentials", "true");

来运行客户端携带证书式访问。通过对 Credentials 参数的设置,就可以保持跨域 Ajax 时的 Cookie。

服务器端 Access-Control-Allow-Credentials = true时,Access-Control-Allow-Origin 的值不能为 '*' ,应设置为发起请求的地址。

如a.com发来的请求:

response.setHeader("Access-Control-Allow-Origin", a.123.com);

如c.123.com发来的请求:

response.setHeader("Access-Control-Allow-Origin", c.123.com);

b服务器在设置cookie时,需设置

cookie.setPath("/");

cookie.setDomain("123.com");

否则设置的cookie无法生效。

欢迎访问个人主页:唐悦玮的博客

解决跨域设置Cookie问题相关推荐

  1. 【跨域】一篇文章彻底解决跨域设置cookie问题!

    一篇文章彻底解决跨域设置cookie问题! 大家好我是雪人~~⛄ 之前做项目的时候发现后端传过来的 SetCookie 不能正常在浏览器中使用. 是因为谷歌浏览器新版本Chrome 80将Cookie ...

  2. SSO单点登录、跨域重定向、跨域设置Cookie、京东单点登录实例分析

    最近在研究SSO单点登录技术,其中有一种就是通过js的跨域设置cookie来达到单点登录目的的,下面就已京东商城为例来解释下跨域设置cookie的过程 涉及的关键知识点: 1.jQuery ajax跨 ...

  3. php跨域单点登录,SSO单点登录、跨域重定向、跨域设置Cookie、京东单点登录实例分析...

    SSO单点登录技术,其中有一种就是通过js的跨域设置cookie来达到单点登录目的的,下面就已京东商城为例来解释下跨域设置cookie的过程 涉及的关键知识点: 1. 跨域redirect实例: te ...

  4. php利用P3P头实现跨域设置cookie

    在开发中,我们碰到的跨域主要还是纠结在IE,页面中的IFRAME或者FRAME或者JS跨域的时候,IE有安全策略限制页面不带cookie,但是如果我们加上P3P,就没有这策略的限制.这也是P3P来突破 ...

  5. 使用p3p跨域设置Cookie

    有些时候不能将url上的参数传来传去,比如与调用某开放平台上的接口,这时候可能需要借助Cookie来进行处理了,但这里可能又涉及到跨域的问题. 如果浏览器开启了对Cookie的支持,按照Cookie ...

  6. 通过P3P头实现跨域设置cookie

    PHP的setcookie函数可以设置域,但是只能在当前域内,如果出现多域可由如下办法处理: 实现原理: www.b.com/set_cookie.php   在b域名下设置a域名的cookie &l ...

  7. p3p-header解决跨域访问cookie

    P3P header允许跨域访问隐私数据,从而可以跨域set-cookie成功 header("P3P: CP=CURa ADMa DEVa PSAo PSDo OUR BUS UNI PU ...

  8. iframe跨域设置cookie

    <?php header("Set-Cookie: test=xxx;Secure;SameSite=None"); ?>

  9. 转载 - 通过设置P3P头来实现跨域访问COOKIE

    作者:老王 网上看了别人介绍的一片文章,说使用P3P可以完成跨域COOKIE操作,感觉很COOL,不过没有提供源代码,我胡乱写了一下,大家看看. 实际工作中,类似这样的要求很多,比如说,我们有两个域名 ...

最新文章

  1. Java网络编程从入门到精通(4):DNS缓存
  2. vsftpd实现的FTP服务
  3. Post Content_Length exceeds the limit
  4. 获取mysql可行方法_Mysql学习Java实现获得MySQL数据库中所有表的记录总数可行方法...
  5. 【控制】《复杂运动体系统的分布式协同控制与优化》-方浩老师-第3章-局部指数稳定的多欧拉-拉格朗日系统协同控制
  6. Java学习笔记10-2——MyBatis
  7. centos8 apache php,centos6.8安装php7 for Apache2
  8. gradle:Creating New Gradle Builds
  9. UVa11809-Floating-Point Numbers
  10. 再探Linux内核write系统调用操作的原子性
  11. Java技术体系概述
  12. wifi信号衰减与距离关系_wifi无线信号传输衰减间隔核算公式
  13. imap服务器怎么填写 网易邮箱,ipad设置163邮箱教程 如何设置163邮箱【详细介绍】...
  14. [番外]:带你玩正则1--数据遍地是,看你取不取
  15. 异贝,通过移动互联网技术,为中小微实体企业联盟、线上链接、线上线下自定义营销方案推送。案例60
  16. NPT 时间服务实战
  17. vue快捷导出excel插件
  18. openwrt luci中文汉化
  19. 交互设计之草图、线框图和原型
  20. 这就是你日日夜夜想要的docker!!!---------Docker Compose容器编排理论+实操

热门文章

  1. (转)FLASH技术分享
  2. 竞品分析:阿里云 VS 腾讯云,AT的短兵相接
  3. 校园地图设计——任意两点间的算法优化流程与while搭配switch语句的bug解读
  4. js制作的炫酷3D太阳系行星运行效果
  5. Ubuntu14.04 64位网易云播放器
  6. 学习聚宽4:函数 下单函数 自定义函数(笔记简单,但是需要重点看)
  7. 典型相关分析(Canonical correlation analysis)(二):原始变量与典型变量之间的相关性 、典型相关系数的检验
  8. 积木报表画布显示不了
  9. vue在初始化时给scrollTop设置一个值,但scrollTop却始终为0
  10. 如何在Mac版达芬奇中安装使用LUT调色预设?达芬奇lut调色预设安装使用教程