日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Cookie跨域以及Cookie共享问题

發布時間:2023/12/20 编程问答 41 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Cookie跨域以及Cookie共享问题 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Cookie跨域問題

假設有兩個網站 A: www.a.com 與 B: www.b.com

  • 跨域請求的cookie存儲問題

在A域名的站點下請求了B域名,假設訪問成功且發送的請求返回了cookie,那么此時瀏覽器保存該cookie的domain是 www.b.com,也就是說請求的是哪個地址,對應的請求返回的cookie的domian就是那個請求地址,和當前的域名無關。不會將B網站返回的cookie的域名設置為www.a.com。

  • 跨域請求的cookie攜帶問題

在站點A下面訪問B域名的接口,那么這是一個跨域請求,如果不做處理,此時這個請求就跨域了,瀏覽器在接收到響應以后會直接報錯。那么這個時候如何讓瀏覽器允許跨域請求?通常有2中解決辦法:1.設置代理 2.服務器在響應頭中添加 allow-origin。
解決跨域以后,如何允許跨域請求攜帶cookie,例如訪問B的接口,默認情況下是不允許帶cookie的,此時需要設置axios的withcredentials的屬性為true,告訴瀏覽器在訪問B網站時,將B網站的cookie帶上,此時光前端設置還不行,還需要后端在響應頭中添加 allow-withcredentials = true,這樣就可以保證跨域請求也可以攜帶cookie。

Cookie共享問題

cookie的作用域和域名有關,和協議以及端口無關。

  • path屬性

cookie的path屬性決定了訪問該域名的那些路徑時可以攜帶cookie,當一個tomcat部署多個服務時,將path設置為/,則訪問所有tomcat項目時都可以攜帶。

  • domain屬性

cookie的domain屬性才是決定了訪問哪個域名時可以攜帶哪些cookie,服務器可以手動設置domian,默認的domain就是請求url中的域名,但是服務器也可以設置當前域名的子域名,但是不允許設置其他域名,如果設置了其他域名,會直接被瀏覽器丟棄。 例如,訪問 www.baidu.com ,則 服務器可以設置cookie的域名為 www.baidu.com、.baidu.com、baike.baidu.com。當baidu.com下的子域名訪問時,也可以攜帶上.baidu.com的cookie,例如當前網站是 www.baike.baidu.com,訪問baike的請求時也可以攜帶 baidu.com的cookie。利用這個特性也可以實現多個相互信任系統之間的單點登錄問題。

總結

以上是生活随笔為你收集整理的Cookie跨域以及Cookie共享问题的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。