java禁止js獲取cookie_java中Cookie被禁用后Session追蹤問題

一.服務器端獲取Session對象依賴于客戶端攜帶的Cookie中的JSESSIONID數據。如果用戶把瀏覽器的隱私級別調到最高,這時瀏覽器是不會接受Cookie、這樣導致永遠在服務器端都拿不到的JSESSIONID信息。這樣就導致服務器端的Session使用不了。

Java針對Cookie禁用,給出了解決方案,依然可以保證JSESSIONID的傳輸。

Java中給出了再所有的路徑的后面拼接JSESSIONID信息。

在 Session1Servlet中,使用response.encodeURL(url) 對超鏈接路徑拼接 session的唯一標識

// 當點擊 的時候跳轉到 session2

response.setContentType("text/html;charset=utf-8");

//此方法會在路徑后面自動拼接sessionId

String path = response.encodeURL("/day11/session2");

System.out.println(path);

//頁面輸出

response.getWriter().println("ip地址保存成功,想看 請點擊");

二.在response對象中的提供的encodeURL方法它只能對頁面上的超鏈接或者是form表單中的action中的路徑進行重寫(拼接JSESSIONID)。

如果我們使用的重定向技術,這時必須使用下面方法完成:其實就是在路徑后面拼接了 Session的唯一標識 JSESSIONID。

// 重定向到session2

String path = response.encodeRedirectURL("/day11/session2");

System.out.println("重定向編碼后的路徑:"?+ path);

response.sendRedirect(path);

session2代碼,獲得session1傳過來的ID

public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

// 需求:從session容器中取出ip

// 獲得session對象

HttpSession session = request.getSession();

// 獲取ip地址

String ip = (String) session.getAttribute("ip");

// 將ip打印到瀏覽器中

response.setContentType("text/html;charset=utf-8");

response.getWriter().println("IP:"?+ ip);

}

session1代碼

public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

// 需求:將ip保存到session中

// 獲取session

HttpSession session = request.getSession();

// 獲得ip

String ip = request.getRemoteAddr();

// 將ip保存到session中

session.setAttribute("ip", ip);

// 需求2:手動的將 session對應的cookie持久化,關閉瀏覽器再次訪問session中的數據依然存在

// 創建cookie

Cookie cookie =new?Cookie("JSESSIONID", session.getId());

// 設置cookie的最大生存時間

cookie.setMaxAge(60 * 30);

// 設置有效路徑

cookie.setPath("/");

// 發送cookie

response.addCookie(cookie);

// 當點擊 的時候跳轉到 session2

// response.setContentType("text/html;charset=utf-8");

// String path = response.encodeURL("/day11/session2");

// System.out.println(path);

// response.getWriter().println("ip地址保存成功,想看 請點擊");

// 重定向到session2

String path = response.encodeRedirectURL("/day11/session2");

System.out.println("重定向編碼后的路徑:"?+ path);

response.sendRedirect(path);

}

以上所述是小編給大家介紹的java中Cookie被禁用后Session追蹤問題,希望對大家有所幫助,如果大家有任何疑問歡迎給我留言,小編會及時回復大家的!

原文鏈接:http://blog.csdn.net/wearetheworld1/article/details/60463652

如對本文有疑問,請提交到交流社區,廣大熱心網友會為你解答!! 點擊進入社區

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/532330.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/532330.shtml
英文地址,請注明出處:http://en.pswp.cn/news/532330.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

java類構造方法成員方法練習_面向對象方法論總結 練習(一)

原標題:面向對象方法論總結 & 練習(一)學習目標1.面向對象與面向過程2.類與對象的概念3.類的定義,對象的創建和使用4.封裝5.構造方法6.方法的重載內容1.面向對象與面向過程為什么會出現面向對象反分析方法?因為現實世界太復雜多變&#x…

mysql 統計查詢不充電_MySql查詢語句介紹,單表查詢,來充電吧

mysql在網站開發中,越來越多人使用了,方便部署,方便使用。我們要掌握mysql,首先要學習查詢語句。查詢單個表的數據,和多個表的聯合查詢。下面以一些例子來先簡單介紹下單表查詢。操作方法01首先看下我們例子用到的數據表&#xff…

MySQL線上優化_線上MySQL千萬級大表,如何優化?

前段時間應急群有客服反饋,會員管理功能無法按到店時間、到店次數、消費金額進行排序。經過排查發現是 SQL 執行效率低,并且索引效率低下。圖片來自 Pexels應急問題商戶反饋會員管理功能無法按到店時間、到店次數、消費金額進行排序,一直轉圈…

java底層怎么學_java學習----底層原理一

數據類型java自帶8種基本類型,4中整型類型,2種浮點類型,1種用于表示Unicode編碼的字符單元的字符類型,和1種用于表示真值的bool類型(這8種基本類型都有自己的隱式初始值)。long在申請變量時賦值數據后必須加l或L,若不加…

java實驗報告合肥工業大學_合肥工業大學數據結構上機實驗代碼與實驗報告(全)github地址...

C++實現鏈隊類——合肥工業大學數據結構實驗5:鏈式隊列實驗5 5.1 實驗目的 熟練掌握隊列的順序鏈式存儲結構. 熟練掌握隊列的有關算法設計,并在鏈隊列上實現. 根據具體給定的需求,合理設計并實現相關結構和算法. 5.2 實驗要求 5.2.1鏈隊列實驗要 …

php 類分開寫,自己前幾天寫的無限分類類_PHP教程

自己前幾天寫的無限分類類_PHP教程前一周寫的吧,使用中效果還不錯。主要思想來自:http://www.phpobject.net/b...[urlhttp://www.phpobject.net/blog/read.php?49][/url]這里就不多解釋原理了,直接發代碼。PS:這里代碼是不能直接使用的&…

php創建表設置編碼,教您在Zend Framework里如何設置數據庫編碼以及怎樣給數據表設定前綴!...

當我們在開發項目時..大家都會遇到一個問題就是:數據庫的編碼問題.當然我們不用Zend Framework做為項目開發的框架時..我們可以很快,很容易搞定這個小問題..但是當我們要使用Zend Framewok開發項目時..我們可能一時會不知道如何解決這個小問題..比如我就是這樣的人..在開發這個…

python 怎么將數組轉為列表_怎么將視頻轉為GIF動態圖 表情包怎么制作

說到GIF,大家應該都不陌生了吧!尤其是在聊天中使用較多,似乎一言不合就開啟了斗圖模式,但是我們平時使用的GIF一般都是軟件中自帶的,其實自己制作也是很方便的,而且會發現很有趣,不但可以直接錄…

curl php 百度,php curl 模擬登錄百度主頁

php curl 模擬登錄百度首頁本帖最后由 STONEWP 于 2012-03-29 13:43:04 編輯代碼如下:$url "https://passport.baidu.com/?login&tplmn";//$url "http://www.baidu.com/";$cookdir "d:/www/html/mndl/cookie.txt";$ch curl_…

proteus里面沒有stm32怎么辦_嵌入式單片機之stm32串口你懂了多少!!

stm32作為現在嵌入式物聯網單片機行業中經常要用多的技術,相信大家都有所接觸,今天這篇就給大家詳細的分析下有關于stm32的出口,還不是很清楚的朋友要注意看看了哦,在最后還會為大家分享有些關于stm32的視頻資料便于學習參考。點擊…

tomcat不能解析php,tomcat不支持php怎么辦

tomcat不支持php的解決辦法:首先將“PHP/Java Bridge”下的相關文件復制到tomcat的lib目錄下;然后修改tomcat安裝目錄下conf文件夾里的“web.xml”文件;最后重啟tomcat即可。java開發者都知道,tomcat是用來部署java web項目的。這…

c++ dicom圖像切割_【高訓智造】原創專業課堂第225期--定位滑座的線切割加工

原標題:【高訓智造】原創專業課堂第225期--定位滑座的線切割加工歡迎來到【高訓智造】原創專業課堂第225期,本期由郭沃沛老師給大家帶來線切割小課堂。定位滑座的線切割加工郭沃沛1零件圖如圖1所示為定位滑座零件圖,其材料為45鋼,…

php.ini配置詳解 號,php INI配置文件的解析實現分析

我不知道怎么說才好,因為我在讀INI文件的時候,往往都是用現成的函數:parse_ini_file或者是parse_ini_string,但怎么寫入,就是另外的方法了(自己實現。。。。)所以看到這篇文章的時候,我也才剛剛知道&#x…

c iostream.源碼_通達信指標公式源碼精準買賣主圖指標公式免費分享

V0:EMA(C,5),COLOR00FF66;V1:EMA(C,10),COLOR00FF66;V2:EMA(C,15),LINETHICK2,COLORFFFFFF;V3:EMA(C,30);V4:EMA(C,60),COLOR3366FF;年線:EMA(C,90),COLORBLUE;M1:1000*V1/V4<1015 AND 1000*V1/V4>975;M2:1000*V2/V4<1020 AND 1000*V2/V4>980;M3:1000*V3/V4<101…

4am永遠 鼠標按鍵設置_4AM稱霸PCL和PEL 絕地求生與和平精英的雙端冠軍 | 電玩巴士...

在《絕地求生》PCL秋季賽&#xff0c;4AM高分碾壓全場斬獲冠軍&#xff1b;在手游和平精英PEL聯賽上4AM戰隊再度重拳出擊榮獲S3總冠軍。在同一時間&#xff0c;4AM戰隊實現了端游與手游雙冠王的神跡&#xff01;要說國內第一大逃殺電競俱樂部&#xff0c;4am自認第二&#xff0…

checkA.php,php window平臺模擬checkdnsrr函數檢測_php

在php的系統函數中有一個checkdnsrr函數&#xff0c;該函數的作用是根據一個給定的host name(域名)或者IP地址檢查它是否有DNS記錄&#xff0c;目的就是檢驗它是否真實存在。但是該函數僅可以在linux系統下使用&#xff0c;并不支持windows平臺。下面是網上搜集到的一個hack的方…

oracle臨時表經常被鎖_【趙強老師】Oracle數據庫的存儲結構

Oracle的存儲結構分為&#xff1a;物理存儲結構和邏輯存儲結構。一、物理存儲結構&#xff1a;指硬盤上存在的文件數據文件(data file)一個數據庫可以由多個數據文件組成的&#xff0c;數據文件是真正存放數據庫數據的。一個數據文件就是一個操作系統文件。數據庫的對象(表和索…

php頁面的循環輸出數組,PHP抓取頁面上的數組 并循環輸出 急

PHP抓取頁面上的數組 并循環輸出 急 在線等我用file_get_contents()抓取了 這個網址上的內容http://simonfenci.sinaapp.com/index.php?keysimon&wd1314abc看似好像反回的是數組。。但是我不管怎么用foreach循環都報錯。。我只想把數組中的word里面的值 取出來。。誰幫幫我…

h5 nan_手把手教你將H5游戲打包成快游戲

H5游戲可以通過快應用的web組件快速打包成快游戲&#xff0c;打包上架后的快游戲&#xff0c;只要原H5游戲的url不發生變動&#xff0c;快游戲就不需要做更新&#xff0c;維護工作量小。使用快應用IDE&#xff0c;打包快游戲的操作很簡單。訪問官網安裝開發工具&#xff0c;在P…

php 構造函數 返回值,php構造函數與析構函數實例分析

本節內容&#xff1a;php構造函數與析構函數例子&#xff1a;復制代碼 代碼示例:class Person{public $name;public $age;public function __construct($name,$age){$this->name $name;$this->age $age;}function __destruct(){echo $this->name."銷毀資源&…