[閒聊] 前端大師請進

作者: Rushia (みけねこ的鼻屎)   2022-06-22 14:35:27
我沒碰過實際的前端代碼
網頁中伺服器端的資料 主流都是怎麼儲存在前端的阿?
比如說我會Call後端的api取得使用者的資訊像是暱稱、帳號、個人資料那些
有不少手段:
1.Cookie
2.SessionStorage
3.LocalStorage
4.每次要資料都call一次Api
5.token
我現在是先用SessionStorage
不知道實際上都是怎麼搞的
作者: lturtsamuel (港都都教授)   2022-06-22 14:37:00
react context
作者: MurasakiSion (紫咲シオン)   2022-06-22 14:37:00
你要跨頁面存取喔
作者: Rushia (みけねこ的鼻屎)   2022-06-22 14:38:00
我現在在玩VUE 想要弄一個SPA
作者: lturtsamuel (港都都教授)   2022-06-22 14:38:00
其實看狀況喇 登入用資訊我會存cookie 設置類資料的如果要讓記憶使用者習慣就localstorage 否則就直接放記憶體裡面 單頁應用爽啦
作者: Rushia (みけねこ的鼻屎)   2022-06-22 14:39:00
還有cookie裡面的資料 是要轉成JSON加密嗎
作者: MurasakiSion (紫咲シオン)   2022-06-22 14:40:00
cookie不會放去什麼需要加密的東西吧
作者: Rushia (みけねこ的鼻屎)   2022-06-22 14:41:00
因為我看隨便一個網站的cookie都長這樣 KggUnF_Bdb9Up7CU-根本看不出裡面存了三小
作者: MurasakiSion (紫咲シオン)   2022-06-22 14:42:00
那大部分都是token阿
作者: lopp54321010 (嘻嘻010)   2022-06-22 14:42:00
可以加密 不過放前端的東西都當作會有怪人想解解看
作者: MurasakiSion (紫咲シオン)   2022-06-22 14:43:00
給伺服器用的session id之類的
作者: Rushia (みけねこ的鼻屎)   2022-06-22 14:43:00
token不是都要加密ㄇ?
作者: lopp54321010 (嘻嘻010)   2022-06-22 14:43:00
不要放不加密不行的東西ㄅ
作者: lturtsamuel (港都都教授)   2022-06-22 14:43:00
那是token吧 程式亂數生成的
作者: lturtsamuel (港都都教授)   2022-06-22 14:44:00
不要想放密碼什麼的 不管是加密還是雜湊都最好不要
作者: lopp54321010 (嘻嘻010)   2022-06-22 14:45:00
像是jwt 你可以存token 但是不要放密鑰
作者: Rushia (みけねこ的鼻屎)   2022-06-22 14:46:00
我沒放密碼 現在只是在做前端使用者是否登入的判斷而已
作者: lturtsamuel (港都都教授)   2022-06-22 14:46:00
你亂數token就被偷走 雖然是很嚴重 但時間過了還是會蒸發掉 密碼被偷走就完了
作者: MurasakiSion (紫咲シオン)   2022-06-22 14:46:00
像登入之類的 通常就是伺服器生成一個token 然後丟給前端 然後你在伺服器用這個token紀錄一些登入資訊
作者: lturtsamuel (港都都教授)   2022-06-22 14:47:00
一般實作就是生亂數token給他 然後後端redis之類的快取層有一個對應這個token的用戶id 時間到會蒸發
作者: MurasakiSion (紫咲シオン)   2022-06-22 14:47:00
下次伺服器再接到cookie有這個token的請求就知道你你是問SessionStorage還是Session伺服器的session的實作實際上就是這個流程阿你寫vue的話理想應該是要做成單頁應用那就是叫一次api 然後單純存在變數這樣最理想吧或著說存在vue的data
作者: Rushia (みけねこ的鼻屎)   2022-06-22 14:55:00
喔喔 所以SPA一般都是每次都呼叫喔
作者: MurasakiSion (紫咲シオン)   2022-06-22 14:58:00
除非你都做了SPA卻還常常重新請求頁面才想另外存吧這種東西就是看你的頻率阿SessionStorage我自己通常是不想經過伺服器的時候用
作者: DDFox (冒險者兼清潔工)   2022-06-22 15:12:00
每次跟server請求的時候都要一次就不用思考更新資料的問題放資料在瀏覽器的話就想一下當使用者清快取會不會怎樣

Links booklink

Contact Us: admin [ a t ] ucptt.com