本文實例講述了Go語言Cookie用法。分享給大家供大家參考,具體如下:
成都創新互聯專注為客戶提供全方位的互聯網綜合服務,包含不限于做網站、網站建設、漢陰網絡推廣、成都小程序開發、漢陰網絡營銷、漢陰企業策劃、漢陰品牌公關、搜索引擎seo、人物專訪、企業宣傳片、企業代運營等,從售前售中售后,我們都將竭誠為您服務,您的肯定,是我們最大的嘉獎;成都創新互聯為所有大學生創業者提供漢陰建站搭建服務,24小時服務熱線:028-86922220,官方網址:m.newbst.com
web 開發免不了要和 cookie 打交道。Go 的 http 庫也提供了 cookie 的相關操作。
Name 字段為 cookie 的名字,Value 是其值,剩下的 Path 和 Domain 則是 cookie 的存儲的范圍。Expires 是 cookie 的過期時間,如果不設置,那么這是一個 session 型的 cookie,即瀏覽器會話有用,一旦關閉瀏覽器,cookie 隨即會被刪除。
設置 Cookie
cookie 是 header 一項內容,因此可以使用 reponse 的 Header 方法設置 cookie。
這里也可以測試驗證 Set 和 Add 兩個方法的差別。當然,和文件上傳類似,Go 也提供了常用的工具函數。
http 的 SetCookie 方法也可以設置 cookie,就不需要關系 Set 和 Add 的先后順序了,當然第二個參數是一個 Cookie 的指針對象。設置了 cookie,接下來就是需要讀 cookie。
讀取 Cookie
讀取 cookie 的方式也有很多,cookie 封裝在header中,當然可以通過 header 方法處理。
不使用 Header 方法,也可以使用 Request 的方法:
訪問的時候可以發現,r.Cookie 返回了對于 key 的鍵值對,而 r.Cookies 則返回了所有 cookie 的 key 的鍵值對值。
Cookie 與 消息
cookie 的作用很多,通常記錄客戶端的一些信息,用來做用戶的登錄驗證。現在我們需要使用 cookie 來做一個小特性---消息。通常 web 請求發出后,response 返回數據,也可以設置一些消息用來指引用戶。
setMessageHandler 函數很簡單,就是創建一個 cookie 實例,然后把消息寫入到 cookie,然后再返回給客戶端。
getMessageHandler 首先會讀取 key 為 flash 的 cookie,如果沒讀到內容,則表示消息不存在,否則就創建另外一個 cookie,設置其過期時間這里等于清除 cookie。然后把讀取出來的 message 返回給客戶端。完成消息通信。
總結
我們討論了 Go 中 cookie 的基本應用。現在的 web 開發中,人們越來越重視網絡安全,因此 cookie 的安全也成為用戶關心的內容。Go 原生的 cookie 封裝比較簡單。Go 的社區卻開發了很多輪子,實現了secure cookie,例如 gorilla/securecookie 庫。實際開發中,可能會借助一些三方的庫或包來完成功能。
希望本文所述對大家Go語言程序設計有所幫助。
網站標題:Go語言Cookie用法分析
文章轉載:http://m.newbst.com/article34/pjcise.html
成都網站建設公司_創新互聯,為您提供企業建站、網站營銷、品牌網站設計、定制網站、網站策劃、外貿網站建設
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯