第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定

http cookie的domain使用

標(biāo)簽:
Java 架構(gòu) 中間件

问题描述

最近遇到了一个因cookie domain设置不正确导致公司自研的分布式session组件无法生效的问题。

公司自研的这套分布式session组件依赖于设置在cookie中的sessionId,请求到后端时经过特定的filter处理,当发现cookie中不存在指定的sessionId值时,会重新生成一个sessionId种入到cookie中,如果存在就根据该sessionId的值从redis缓存中取出该值对应的session内容。

但是组内一个服务接入这个组件自测的时候,发现每次请求都无法取到上一次session的值,排查后发现每一次请求中根本没有带上上一次cookie中种下的sessionId,导致每次请求否会生成一个新的sessionId。而每一次请求没有带上上一次请求的sessionId的原因在于该cookie值得domain设置不符合要求,导致cookie设置失败。

1、当请求到后端时,发现cookie中没有sessionId,会重新生成sessionId并种到cookie中,如下图:

图片描述

2、请求没有带上上一次请求响应时设置在cookie中的sessionId,并重新生成sessionId,如下图:

图片描述

问题定位

cookie中sessionId的domain设置不符合规范,导致该cookie值设置失败。虽然在浏览器中看到请求的相应中已经设置了cookie sessionId,但是这并不代表该cookie值设置成功,这仅仅表示了设置cookie值的动作。

问题分析

cookie domain的设置规则

  • 只能设置为当前域名及其父域名,否则无效。
    例如,一个服务的域名为dev.service.abc.com,cookie的domain设置可以为:dev.service.abc.com.service.abc.com.abc.com

  • 不能设置为.com.cn.net

  • 不设置domain,默认domain为当前域名

结合问题

服务代码中该sessionId的cookie domain设置为如.abc的形式,和cookie domain设置为.com.cn.net是一个道理,不符合cookie domain的设置规则,这样设置cookie是无效的,因此请求无法带上一次设置的sessionId,因此上一次sessionId根据就没有成功种入到cookie中。

cookie domain使用扩展

Cookie中domain的一个最为重要和常见的作用就是实现cookie跨域共享。

在qiye.epro.sogou.com域下种下cookie:cookieName=cookieValue,domain=.sogou.com,这样:其他以.sogou.com为后缀的域名对应的服务就可以获取到该cookie信息,例如: qyyun.epro.sogou.comh5-qiye.epro.sogou.com、www.sogou.com等,实现了cookie信息的跨域共享。

以上是个人见解,如有不正确的地方,请批评指正。

點(diǎn)擊查看更多內(nèi)容
2人點(diǎn)贊

若覺得本文不錯,就分享一下吧!

評論

作者其他優(yōu)質(zhì)文章

正在加載中
感謝您的支持,我會繼續(xù)努力的~
掃碼打賞,你說多少就多少
贊賞金額會直接到老師賬戶
支付方式
打開微信掃一掃,即可進(jìn)行掃碼打賞哦
今天注冊有機(jī)會得

100積分直接送

付費(fèi)專欄免費(fèi)學(xué)

大額優(yōu)惠券免費(fèi)領(lǐng)

立即參與 放棄機(jī)會
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號

舉報

0/150
提交
取消