![](/img/trans.png)
[英]Cookie is saved and sent with every request but can't find in angularjs $cookies
[英]Is it possible to prevent cookies to be sent in every HTTP request?
我最近發現(這里: 每個Web請求是否發送瀏覽器cookie? )每次HTTP請求都包含每次向同一域發出請求時與域相關的cookie。
鑒於此,例如,當請求不通過瀏覽器而是從Node.js發送時會發生什么? 是否可能在請求中未發送任何信息? 是否也可以阻止它在瀏覽器請求中發送?
瀏覽器
無法阻止瀏覽器發送cookie 。
這就是為什么通常建議 (雅虎開發人員最佳實踐,請參閱使用組件的無Cookie域)部分來提供來自不同cookie的不同域的靜態內容,如css,images。
當瀏覽器發出靜態圖像請求並將cookie與請求一起發送時, 服務器對這些cookie沒有任何用處 。 因此,他們只會毫無理由地創建網絡流量 。 您應該確保使用無cookie請求請求靜態組件。 創建一個子域並在那里托管所有靜態組件。
編程
相反, 您可以 從任何編程語言 中選擇是否要發送cookie。
Cookie管理由程序員完成,因為編寫庫是為了發出單個請求。
因此,如果您發出第一個返回cookie的請求,則需要顯式讀取它們,將它們保存在本地某處,並最終在需要時將它們放入同一服務器的第二個請求中。
因此,如果您沒有在請求中明確添加cookie,那么從NodeJS中,http調用不會保留它們。
您可以使用Fetch
與credentials
設置選項omit
看
您可以使用代理服務器剝離cookie。 例如,我們的產品WinGate將允許您修改請求(和響應),您可以使用它來清除請求中的Cookie標頭。
但是,這將阻止大量網站正常運行,因為cookie用於傳輸會話ID,以便服務器可以識別您的瀏覽器所做的每個連接/請求來自同一個“會話”。 HTTP本身沒有任何會話概念。
免責聲明:我為制作WinGate的Qbik工作。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.