首先,說起來創建session,一般會針對注冊登錄或者授權等情況;
session 從字面上講,就是會話。這個就類似於你和一個人交談,你怎么知道當前和你交談的是張三而不是李四呢?對方肯定有某種特征(長相等)表明他就是張三。session 也是類似的道理,服務器要知道當前發請求給自己的是誰。為了做這種區分,服務器就要給每個客戶端分配不同的“身份標識”,然后客戶端每次向服務器發請求的時候,都帶上這個“身份標識”,服務器就知道這個請求來自於誰了。至於客戶端怎么保存這個“身份標識”,可以有很多種方式,對於瀏覽器客戶端,大家都默認采用 cookie 的方式。服務器使用session把用戶的信息臨時保存在了服務器上,用戶離開網站后session會被銷毀。這種用戶信息存儲方式相對cookie來說更安全,可是session有一個缺陷:如果web服務器做了負載均衡,那么下一個操作請求到了另一台服務器的時候session會丟失。(這里引用一位友友最通俗的解釋方式,感覺通俗易懂就拿過來啦)。
所以get方式的請求方式如下:


在做接口測試時,經常會碰到請求參數為token的類型:
客戶端使用用戶名跟密碼請求登錄->服務端收到請求,去驗證用戶名與密碼->驗證成功后,服務端會簽發一個 Token,再把這個 Token 發送給客戶端->客戶端收到 Token 以后可以把它存儲起來,比如放在 Cookie 里或者 Local Storage->客戶端每次向服務端請求資源的時候需要帶着服務端簽發的 Token->服務端收到請求,然后去驗證客戶端請求里面帶着的 Token,如果驗證成功,就向客戶端返回請求的數據.
在web頁登錄的時候發送加密的用戶名和密碼到服務器,服務器驗證用戶名和密碼,如果成功,以某種方式比如隨機生成32位的字符串作為token,存儲到服務器中,並返回token到web頁面,以后web頁請求時,凡是需要驗證的地方都要帶上該token,然后服務器端驗證token,成功返回所需要的結果,失敗返回錯誤信息,讓他重新登錄。其中服務器上token設置一個有效期,每次web頁請求的時候都驗證token和有效期。
