在選擇session和cookie時,考慮session位於伺服器端,而cookie位於使用者瀏覽器端,session的安全性更高。現在更多時候,寫**後台選擇用session來保持會話狀態。使用session時,我自己封裝過一次session包,寫的過程比較複雜,花了幾天時間,而github.com/gin-contrib/sessions
這個包可以直接呼叫即可(自己封裝session包是一次對原理的深入理解,但在做專案時其實不用花時間去封裝…)
關於session包我寫的一點點使用說明:github.com/gin-contrib/sessions
而cookie用起來就很簡單了,這篇講cookie最常用的運用,包直接引入的是net/http
,也就是說不需要再多引入其他包來完成了。
vscode、chrome、postman(非常推薦的請求除錯工具)
設定cookie
跨路由獲取cookie
在另乙個路由下獲取生成的cookie值
func
getcookiehandler
(c *gin.context)
在/login
中寫cookie,將生成的cookie儲存到瀏覽器端,保持會話狀態,方便後續獲取cookie引數
)然後登入乙個使用者名稱試試
獲取cookie的方法和前面測試中的方法一致…就不再闡述了
" 對於開發者,cookie的是web開發里程上的一大發明,cookie是小甜點,絕不是惡魔。但是,如果使用不當,小甜點發霉了一樣會有毒。"但是我們發現cookie設定為我們真實的id,未加密cookie讓安全問題難以得到保障,所以要對cookie進行加密儲存,這個環節也非常關鍵,
github.com/gorilla/securecookie
包可以提供乙個hashkey
var hashkey =
byte
("very-secret"
)var s = securecookie.
new(hashkey,
nil)
encoded,
_:=s.
encode
("test_cookie"
,"test_cookie"
)
保持linux下保持ssh不斷線
使用ssh連線遠端伺服器的時候,在網路質量不太好的情況下,如果長時間沒有鍵盤輸入,ssh連線有可能中斷。正在執行的程式和vim等緩衝區資料都會丟失。在windows下使用securecrt可以設定session的noop屬性來保持連線。在linux下要保持連線,可以使用 o的乙個引數serveral...
取樣保持電路
取樣保持電路 取樣 保持器 又稱為取樣保持放大器。當對模擬訊號進行a d轉換時,需要一定的轉換時間,在這個轉換時間內,模擬訊號要保持基本不變,這樣才能保證轉換精度。取樣保持電路即為實現這種功能的電路 一 基本原理 在輸入邏輯電平控制下出於 取樣 或 保持 兩種工作狀態。取樣 狀態下電路的輸出跟蹤輸入...
保持ssh連線
終端軟體 better terminal emulator pro用手機ssh到伺服器上,但是如果隔1 2分鐘沒 的clientaliveinterval 60 clientalivecountmax 1 這 樣,ssh server 每 60 秒就會自動傳送乙個訊號給 client,而等待 cli...