cookie

key

value

expires

  • 過期時間

domain

  • 主域,不可以跨主域設(shè)置cookie,不過可以通過一些技術(shù)手段讓,讓需要被跨的那個站,配合一下進(jìn)行實現(xiàn),請繼續(xù)往下看,下面有個解決方案1,可以讓你做到跨域設(shè)置cookie

path

  • 路徑建議設(shè)置為/,這樣就可以在別的路徑下也可以讀寫

httponly

  • 后端用這個屬性設(shè)置cookie,前端用js無法讀取被后端設(shè)置的cookie

跨域

跨域訪問,簡單來說就是 A 網(wǎng)站的 javascript 代碼試圖訪問 C網(wǎng)站,包括提交內(nèi)容和獲取內(nèi)容。由于安全原因,跨域訪問是被各大瀏覽器所默認(rèn)禁止的??缬蚴菫g覽器的限制。

那么問題來了, 例如我當(dāng)前在訪問A站點,因為我等會兒要跳到C站點去登陸,但是我想知道我登陸前做了什么

  • 解決方案1 - 已實踐,此方案行得通
    • 把這些信息記錄到C站點的cookie上,這時候就需要跨域設(shè)置cookie
    • 首先,我需要和C站點的后端配合,在他那邊要有一個頁面setCookie.html,負(fù)責(zé)接收postMessage傳遞過去的消息,并設(shè)置cookie
    • 其次,我當(dāng)前站點有個隱藏的iframe,iframe的scr是C站點里的setCookie.html,當(dāng)我執(zhí)行一些操作想要記錄的時候,我就通過這個iframe去postMessage一些信息過去,對方負(fù)責(zé)接收并設(shè)置cookie,就可以達(dá)到跨域設(shè)置cookie的效果了
  • 解決方案2 - 未實踐,按理說行的通
    • 當(dāng)我執(zhí)行一些操作想要記錄的時候,我就直接打C站的接口,讓C站自行記錄,但是這個接口要允許跨域,其實不允許跨域也沒關(guān)系,畢竟我的消息是能傳過去的,跨域?qū)е碌膯栴}只是收到響應(yīng)不能使用罷了
  • 解決方案2 - 未實踐,按理說行的通
    • 當(dāng)我執(zhí)行一些操作想要記錄的時候,我就直接打A站的接口,讓A站的后端,通過服務(wù)端通信把數(shù)據(jù)帶給C站的后端,當(dāng)然這就是他們兩個后端的事了,但是無論哪一種方案,都少不了你前端,看把你厲害的,先自行得瑟一會兒把
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

友情鏈接更多精彩內(nèi)容