程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> 編程綜合問答 >> login-登錄模塊實現自動登錄功能對IE浏覽器失效的問題

login-登錄模塊實現自動登錄功能對IE浏覽器失效的問題

編輯:編程綜合問答
登錄模塊實現自動登錄功能對IE浏覽器失效的問題

有沒有人在做web項目過程中遇到過類似的問題,

就是登錄模塊有一個自動登錄的功能,勾選後下次打開浏覽器進入網頁時,只要cookies沒過期

就不需要再次登錄。很多網站都有這個功能吧

在chrome浏覽器下沒有發生任何問題,

但是用IE浏覽器就會出現自動登錄失效的問題,
能在chrome下成功,說明程序主體啊啥都沒問題的,
問題就在在於IE浏覽器!(又是令人發指的IE!
但我不知道問題具體會出在哪一步,
我自己猜想有3方面的可能:
1是可能出在 勾選自動登錄的那個小框框,在IE浏覽器下樣式失效,根本沒有把勾選了自動登錄的值true傳給後台。相關jsp如下:

            <div class="pt10">
                <input name="" type="checkbox" id="loginChecked"> 自動登錄
            </div>

有沒有jsp大神幫看下這個 input name="" type="checkbox" 在IE浏覽器下生效嗎?

2是向IE浏覽器存cookies的環節可能有問題,相關代碼如下:

    private void setLoginRedis(HashCommands commands,Object key, Object hashKey, Object value) {
        commands.put(RedisBusinessCode.WEB_LOGIN_LIM.getCode(), key, hashKey, value); //保存到redise
        commands.expire(RedisBusinessCode.WEB_LOGIN_LIM.getCode(), key, 1, TimeUnit.HOURS);
    }

這個可能出問題嗎?我不懂 不同浏覽器的cookies機制是否存在不兼容問題

3是沒有從IE浏覽器的cookies讀取到需要的值,這個其實同2一樣,就是不同浏覽器的cookies機制是否存在不兼容問題,因為在chrome浏覽器下沒出問題,說明代碼是沒錯的,只能從IE這裡找原因了

會不會還存在其他環節出問題的可能?

最佳回答:


問題最終我自己解決了,
原始代碼中生成cookie後向浏覽器寫入用的是response.addHeader()方法,
向數據包頭部寫入cookie的字符串數據,這個方法我發現對IE浏覽器無效啊,
於是改成response.addCookie()方法後,問題解決了

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved