4 回答

TA貢獻(xiàn)2019條經(jīng)驗(yàn) 獲得超9個(gè)贊
如果沒有任何特定的附加設(shè)置,您的代碼不應(yīng)傳輸 cookie。
最好使用 HTTPS 代理進(jìn)行測試。因此,如果您的代碼如下所示:
public static void main(String[] args) { GetHtml(); GetHtml(); GetHtml();}
您可以在所有三個(gè)調(diào)用中看到?jīng)]有傳輸 cookie。
添加 CookieHandler
如果您要添加這樣的 cookie 處理程序:
public static void main(String[] args) {
CookieManager cookieManager = new CookieManager();
CookieHandler.setDefault(cookieManager);
GetHtml();
GetHtml();
GetHtml();
}
那么情況就不同了。只有在第一次調(diào)用中沒有 cookie,在第一次調(diào)用之后,進(jìn)一步的調(diào)用正在傳輸 cookie。
推薦
因此建議設(shè)置一個(gè)代理來查看您的程序正在傳輸?shù)膶?shí)際數(shù)據(jù)。

TA貢獻(xiàn)1777條經(jīng)驗(yàn) 獲得超3個(gè)贊
首先,重要的是要了解 Chrome 的隱身模式是如何 工作的:
Chrome 不會保存您的:瀏覽歷史記錄、cookie 和網(wǎng)站數(shù)據(jù),或在表單中輸入的信息。
您下載的文件和您創(chuàng)建的書簽將被保留。
您訪問的網(wǎng)站、您的雇主或?qū)W校或您的互聯(lián)網(wǎng)服務(wù)提供商*不會隱藏您的活動*。
A URLConnection
,一般來說,不會:
保存瀏覽歷史
保存 cookie 和站點(diǎn)數(shù)據(jù)(您可以使用CookieManager保存 cookie )
保存表格中輸入的信息
默認(rèn)情況下,它也不保存或下載文件。書簽在這里也不相關(guān)。
此外,重要的是要了解隱身模式與 VPN 不同——您的 ISP、您瀏覽的站點(diǎn)等都可以看到您計(jì)算機(jī)的 IP 地址、瀏覽器的代理字符串等。
所以從網(wǎng)絡(luò)的角度來看,請求的“新鮮感”更像是一種幻覺。但是,在隱身模式下,本地不會保留有關(guān)您的瀏覽會話的任何內(nèi)容,因此,如果您在公共機(jī)器上登錄到您的銀行帳戶(恕我直言,您永遠(yuǎn)不應(yīng)該這樣做),使用隱身模式會更安全,因?yàn)橹灰P(guān)閉隱身窗口,您的所有會話信息都將被清除,并且該公共機(jī)器的其他用戶無法訪問它。
因此,簡而言之,在使用URLConnection
. 事實(shí)上,反之亦然:您需要編寫額外的代碼來讓 Java 程序記住它迄今為止訪問過的鏈接或保留 cookie 等。

TA貢獻(xiàn)1802條經(jīng)驗(yàn) 獲得超4個(gè)贊
Chrome 和 Chrome 隱身模式之間的唯一區(qū)別是它不共享 cookie 和其他存儲機(jī)制。處于隱身模式的 Chrome 也不會保留任何內(nèi)容,因此一旦 Chrome 關(guān)閉,該網(wǎng)站可能試圖存儲在您的瀏覽器中的任何內(nèi)容都將丟失。
換句話說,當(dāng)您創(chuàng)建新連接并且不發(fā)送任何以前的 cookie 時(shí),它類似于隱身模式。請注意,只要保持連接,就可以發(fā)送 cookie。
我不確定您的意圖是什么,但請注意,網(wǎng)站可以有其他方法來檢測重復(fù)連接,例如 IP、用戶代理版本(如果提供)、操作系統(tǒng)(如果提供)等。

TA貢獻(xiàn)1876條經(jīng)驗(yàn) 獲得超7個(gè)贊
嘗試將緩存設(shè)置為 false。
connection.setUseCaches(false);
添加回答
舉報(bào)