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

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

Java 關(guān)于Cookie的蛋疼問(wèn)題

Java 關(guān)于Cookie的蛋疼問(wèn)題

翻閱古今 2019-03-22 19:15:58
最近讓做一個(gè)自動(dòng)登錄的功能,于是google,學(xué)習(xí)了下他人的代碼,感覺(jué)不是很難;但還是遇到了一些小挫折,很叫人蛋疼!也沒(méi)法搞定了,只能發(fā)帖呼救了~我所實(shí)現(xiàn)的自動(dòng)登錄功能也就三步:①在登錄方法的判斷密碼的if分支中,創(chuàng)建cookie如下:  Cookie cookie = new Cookie("usr", username); cookie.setMaxAge(24*60*60*15); response.addCookie(cookie); Cookie cookie = new Cookie("pw", pwEncrypt); cookie.setMaxAge(24*60*60*15); response.addCookie(cookie); ②在訪問(wèn)首頁(yè)的方法中,搜索cookie如下:  String username = ""; String password = ""; Cookie[] cookies = request.getCookies(); if (cookies != null) {     for (Cookie cookie : cookies) {         if ("usr".equals(cookie.getName())) {             username = cookie.getValue();         }         if ("pw".equals(cookie.getName())) {             password = cookie.getValue();         }         if (!"".equals(username) && !"".equals(password)) {             //將用戶對(duì)象放入session中         }     } } ③退出方法中,刪除cookie如下:  Cookie[] cookies = request.getCookies(); if (cookies != null) {     for (Cookie cookie : cookies) {         if ("urs".equals(cookie.getName())) {             cookie.setValue("");             cookie.setMaxAge(0);             response.addCookie(cookie);         }         if ("pw".equals(cookie.getName())) {             cookie.setValue("");             cookie.setMaxAge(0);             response.addCookie(cookie);         }     } } 其中,①②步都木問(wèn)題,問(wèn)題就出在第③步,無(wú)論怎樣都無(wú)法刪除cookie(最后也只能在ie的Internet選項(xiàng)中刪了)。點(diǎn)擊“退出”按鈕時(shí),關(guān)閉瀏覽器,再打開(kāi),首頁(yè)依然顯示該用戶為登錄狀態(tài),很是糾結(jié)??!是代碼問(wèn)題,還是我瀏覽器設(shè)置問(wèn)題?或者是其他什么原因?
查看完整描述

6 回答

?
繁花如伊

TA貢獻(xiàn)2012條經(jīng)驗(yàn) 獲得超12個(gè)贊

一、刪除已知名稱的Cookie(方案:重新建立同名立即刪除類型的Cookie)

Cookie newCookie=new Cookie(“username”,null); //假如要?jiǎng)h除名稱為username的Cookie

newCookie.setMaxAge(0); //立即刪除型

newCookie.setPath(“/”); //項(xiàng)目所有目錄均有效,這句很關(guān)鍵,否則不敢保證刪除

response.addCookie(newCookie); //重新寫入,將覆蓋之前的

  二、刪除所有Cookie

Cookie[] cookies=request.getCookies();

for(Cookie cookie: cookies){

cookie.setMaxAge(0);

cookie.setPath(“/”);

response.addCookie(cookie);

}


查看完整回答
反對(duì) 回復(fù) 2019-04-26
?
泛舟湖上清波郎朗

TA貢獻(xiàn)1818條經(jīng)驗(yàn) 獲得超3個(gè)贊

1、你刪cookie的方式?jīng)]問(wèn)題
2、你是不是應(yīng)該調(diào)用session.invalidate 銷毀session,因?yàn)?br/>String username = "";
String password = "";
Cookie[] cookies = request.getCookies();
if (cookies != null) {
for (Cookie cookie : cookies) {
if ("usr".equals(cookie.getName())) {
username = cookie.getValue();
}
if ("pw".equals(cookie.getName())) {
password = cookie.getValue();
}
if (!"".equals(username) && !"".equals(password)) {
//將用戶對(duì)象放入session中
}
}
}

你這段代碼是查用戶放到session 懷疑你又根據(jù)session中的數(shù)據(jù)判斷用戶是否登錄


查看完整回答
反對(duì) 回復(fù) 2019-04-26
?
郎朗坤

TA貢獻(xiàn)1921條經(jīng)驗(yàn) 獲得超9個(gè)贊

刪除cookie的程序是沒(méi)有問(wèn)題的,估計(jì)是你每次登陸的時(shí)候并不是檢測(cè)cookie中是否存在改用戶,可能是檢測(cè)session了,你可以每次退出登陸是將session銷毀試試


查看完整回答
反對(duì) 回復(fù) 2019-04-26
?
江戶川亂折騰

TA貢獻(xiàn)1851條經(jīng)驗(yàn) 獲得超5個(gè)贊

 for (Cookie cookie : cookies) {

if ("urs".equals(cookie.getName())) {

//cookie.setValue(""); // 注釋掉 
cookie.setMaxAge(0);

response.addCookie(cookie);

}

if ("pw".equals(cookie.getName())) {

//cookie.setValue(""); // 注釋掉        cookie.setMaxAge(0);   
        response.addCookie(cookie);   
    }   
}


查看完整回答
反對(duì) 回復(fù) 2019-04-26
?
胡子哥哥

TA貢獻(xiàn)1825條經(jīng)驗(yàn) 獲得超6個(gè)贊

點(diǎn)擊“退出”按鈕時(shí),關(guān)閉瀏覽器,再打開(kāi),首頁(yè)依然顯示該用戶為登錄狀

要確認(rèn)一下客戶端是否接收到了刪除cookie的命令,用firebug看看點(diǎn)擊退出時(shí),瀏覽器接收到的response中有沒(méi)有set cookie指令


查看完整回答
反對(duì) 回復(fù) 2019-04-26
  • 6 回答
  • 0 關(guān)注
  • 595 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號(hào)

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