java中Servlet Cookie取不到值原因解決辦法
java中Servlet Cookie取不到值原因解決辦法
現(xiàn)象:
在測(cè)試帶Cookie的HTTP請(qǐng)求時(shí)發(fā)現(xiàn),服務(wù)端用request.getHeader("cookie")可以去到值; 但是用request.getCookies()卻不行
Cookie mycookies[] = request.getCookies();
中永遠(yuǎn)獲取不到uid的值;(80端口號(hào)除外)
原因:
查了瀏覽器的具體cookie值,發(fā)現(xiàn)
http://localhost:8080/ 訪(fǎng)問(wèn)的時(shí)候,cookie值放在localhost下,服務(wù)器自動(dòng)生成的SESSIONID也是存放在localhost路徑下。
http://127.0.0.1:8080/訪(fǎng)問(wèn)的時(shí)候,cookie uid值放在127.0.0.1:8080下,在127.0.0.1:8080下的cookie服務(wù)端的Servlet永遠(yuǎn)都獲取不到;而服務(wù)器自動(dòng)生成的SESSIONID則是在127.0.0.1下,與uid存放位置不同。
所以在服務(wù)端下發(fā)cookie的時(shí)候,
String host=request.getHeader("host");
需要修改為
if(host.indexOf(":")>-1){
host=host.split(":")[0];
}
或者放棄設(shè)置
mycookie.setDomain(host);
這樣cookie值也是保存在127.0.0.1下的,與端口號(hào)不關(guān)聯(lián)
當(dāng)然是服務(wù)器已經(jīng)有域名的就不會(huì)出現(xiàn)端口號(hào)下獲取不到cookie的值
解決辦法:
String cookie=request.getHeader("cookie");
Cookie mycookies[] = request.getCookies();
加上前面一行后面即可取到,
感謝閱讀,希望能幫助到大家,謝謝大家對(duì)本站的支持!
- 如何使用會(huì)話(huà)Cookie和Java實(shí)現(xiàn)JWT身份驗(yàn)證
- Java后端Cookie實(shí)現(xiàn)(時(shí)間戳)代碼實(shí)例
- Java接口測(cè)試Cookie與token原理解析
- Java 模擬cookie登陸簡(jiǎn)單操作示例
- 在java中http請(qǐng)求帶cookie的例子
- Java 對(duì) Cookie增刪改查的實(shí)現(xiàn)示例
- Java Web學(xué)習(xí)之Cookie和Session的深入理解
- java使用Cookie判斷用戶(hù)登錄情況的方法
- servlet之cookie簡(jiǎn)介_(kāi)動(dòng)力節(jié)點(diǎn)Java學(xué)院整理
- JavaWeb 中Cookie實(shí)現(xiàn)記住密碼的功能示例
- JavaWeb使用Session和Cookie實(shí)現(xiàn)登錄認(rèn)證
- Cookie在Java中的使用
相關(guān)文章
利用Springboot+Caffeine實(shí)現(xiàn)本地緩存實(shí)例代碼
Caffeine是一個(gè)基于Java8開(kāi)發(fā)的提供了近乎最佳命中率的高性能的緩存庫(kù),下面這篇文章主要給大家介紹了關(guān)于利用Springboot+Caffeine實(shí)現(xiàn)本地緩存的相關(guān)資料,需要的朋友可以參考下2023-01-01
Quartz+Spring Boot實(shí)現(xiàn)動(dòng)態(tài)管理定時(shí)任務(wù)
最近做項(xiàng)目遇到動(dòng)態(tài)管理定時(shí)任務(wù)的需求,剛拿到這個(gè)需求還真不知道從哪下手,經(jīng)過(guò)一番思考,終于找出實(shí)現(xiàn)思路,接下來(lái)通過(guò)本文給大家介紹了Quartz+Spring Boot實(shí)現(xiàn)動(dòng)態(tài)管理定時(shí)任務(wù)的相關(guān)知識(shí),需要的朋友可以參考下2018-09-09
Spring?Boot在Web應(yīng)用中基于JdbcRealm安全驗(yàn)證過(guò)程
這篇文章主要為大家介紹了Spring?Boot在Web應(yīng)用中基于JdbcRealm安全驗(yàn)證過(guò)程詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪<BR>2023-02-02
Java String字符串和Unicode字符相互轉(zhuǎn)換代碼詳解
這篇文章主要介紹了Java String字符串和Unicode字符相互轉(zhuǎn)換代碼,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-05-05
Java中List Set和Map之間的區(qū)別_動(dòng)力節(jié)點(diǎn)Java學(xué)院整理
Java集合的主要分為三種類(lèi)型set集,list列表,map映射,接下來(lái)通過(guò)本文給大家詳細(xì)介紹java中l(wèi)ist、Set和Map之間的區(qū)別,需要的的朋友參考下吧2017-05-05
idea導(dǎo)入項(xiàng)目框架的詳細(xì)操作方法
大家使用idea開(kāi)發(fā)工具時(shí)經(jīng)常會(huì)需要導(dǎo)入項(xiàng)目框架,糾結(jié)該怎么操作呢,今天小編給大家分享一篇圖文教程,幫助大家解決idea導(dǎo)入項(xiàng)目框架的問(wèn)題,感興趣的朋友一起看看吧2021-05-05
SpringMVC xml文件路徑在web.xml中的配置方式
這篇文章主要介紹了SpringMVC xml文件路徑在web.xml中的配置方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-09-09
Java聊天室之實(shí)現(xiàn)獲取Socket功能
這篇文章主要為大家詳細(xì)介紹了Java簡(jiǎn)易聊天室之實(shí)現(xiàn)獲取遠(yuǎn)程服務(wù)器和客戶(hù)機(jī)的IP地址和端口號(hào)功能,文中的示例代碼講解詳細(xì),需要的可以了解一下2022-10-10
Mybatis如何實(shí)現(xiàn)InsertOrUpdate功能
這篇文章主要介紹了Mybatis如何實(shí)現(xiàn)InsertOrUpdate功能,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-05-05

