注冊登錄與Cookie

注冊過程中經(jīng)歷的步驟和過程有以下幾點(diǎn):

?1.用戶輸入正確格式的郵箱、用戶名和密碼并點(diǎn)擊注冊。
?2.前端頁面判斷用戶輸入的信息的格式是否正確和合法。
?3.客戶端把這些信息提交至服務(wù)器端,服務(wù)器獲取全部內(nèi)容并提取需要的信息。
?4.服務(wù)器端對這些信息進(jìn)行再次的判斷,判斷用戶輸入的信息的格式是否正確和合法,以及與數(shù)據(jù)庫中的已有信息作比較,判斷相關(guān)信息是否已經(jīng)被注冊。
?5.若判斷后發(fā)現(xiàn)沒有問題,則返回客戶端HTTP狀態(tài)碼200表示注冊成功,并把新注冊用戶的信息寫入數(shù)據(jù)庫內(nèi),若發(fā)現(xiàn)問題,則返回HTTP狀態(tài)碼400和對應(yīng)的錯(cuò)誤信息表示注冊失敗。

登錄過程中經(jīng)歷的步驟和過程有以下幾點(diǎn):

?1.用戶輸入正確格式的用戶名和密碼并點(diǎn)擊登錄。
?2.前端頁面判斷用戶輸入的信息的格式是否正確和合法。
?3.客戶端把這些信息提交至服務(wù)器端,服務(wù)器獲取全部內(nèi)容并提取需要的信息。
?4.服務(wù)器端對這些信息進(jìn)行再次的判斷,判斷用戶輸入的信息的格式是否正確和合法,并與數(shù)據(jù)庫中的已注冊賬戶信息進(jìn)行核對,看看對應(yīng)的用戶名和密碼是否相等。
?5.若核對發(fā)現(xiàn)信息相等,則設(shè)置Cookie,并返回客戶端HTTP狀態(tài)碼200表示注冊成功,若核對失敗,則返回HTTP狀態(tài)碼401和對應(yīng)的錯(cuò)誤信息表示注冊失敗。
?6.客戶端若收到401狀態(tài)碼,則提示用戶登錄失敗,并展示對應(yīng)錯(cuò)誤信息,若收到200狀態(tài)碼,則帶上收到的Cookie對首頁的url發(fā)起請求。
?7.服務(wù)器收到請求后解析請求所攜帶的Cookie,提取出Cookie所包含的用戶的信息。
?8.把首頁中的部分公共信息更替為該用戶自己的個(gè)人信息,并把更替好的內(nèi)容返回給客戶端。
?9.客戶端向用戶展示返回的內(nèi)容。

??這里值得說明的是,前端可以不判斷和驗(yàn)證注冊以及登錄的內(nèi)容,但是后端必須要添加驗(yàn)證,因?yàn)橛脩艨梢酝ㄟ^在命令行使用curl發(fā)送請求,這樣會跨過瀏覽器的驗(yàn)證,因此后端的驗(yàn)證是必須要存在的。

Cookie:

??Cookie的作用就是識別用戶的身份,Cookie里面含有用戶的一些個(gè)人信息。其實(shí)Cookie還有另外一個(gè)作用,就是記錄歷史,一些購物網(wǎng)站的購物車就是應(yīng)用了這個(gè)作用。

關(guān)于Cookie的定義,我這里選擇摘錄方應(yīng)杭老師在知乎上的說法:
1. Cookie 是瀏覽器訪問服務(wù)器后,服務(wù)器傳給瀏覽器的一段數(shù)據(jù)。
2. 瀏覽器需要保存這段數(shù)據(jù),不得輕易刪除。
3. 此后每次瀏覽器訪問該服務(wù)器,都必須帶上這段數(shù)據(jù)。

而Cookie有著以下的特點(diǎn):
1.服務(wù)器通過set-Cookie響應(yīng)頭設(shè)置Cookie。
2.瀏覽器得到Cookie之后,每次請求都要帶上Cookie。
3.服務(wù)器讀取Cookie就知道登錄用戶的信息(例如email、用戶名等)。

??另外,Cookie是存在有效期的,默認(rèn)是20分鐘左右,之所以說左右,是因?yàn)榫唧w時(shí)間由瀏覽器自動決定,但是后端可以強(qiáng)制設(shè)置Cookie的有效期,設(shè)置方法請讀者自行查看Set-Cookie MDN

??最后,Cookie是可以修改的,因此存在著很大的安全隱患,需要通過一些手段來保證它的安全性。還有退出登錄的方法就是清除相關(guān)的cookies和session,這些內(nèi)容需要讀者自行去搜索,在這里就不再做詳細(xì)敘述了。

參考鏈接:

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • scrollView.h scrollView屬性 contentOffset: 描述了內(nèi)容視圖相對于scroll...
    小逗比麼麼噠閱讀 949評論 0 0
  • 精進(jìn) 學(xué)習(xí)回來全員生發(fā)的第一個(gè)機(jī)制就是全員,每天,面對他人時(shí)微笑打招呼。 領(lǐng)悟 當(dāng)愛如潮水般涌來的時(shí)候,你要有所準(zhǔn)...
    kiyoi2017閱讀 183評論 1 2
  • 【GINILI】?「慢」 在禪繞的世界里,慢就是快。 成長路上,我們磕磕絆絆,慢。 學(xué)習(xí)途中,我們是懂非懂,慢。 ...
    肥鴿子麻麻閱讀 689評論 0 1
  • 幾天前,由于擋不住好奇心的驅(qū)使,我和哥們一起,去看了《后來的我們》。 也許很多人會覺得,兩個(gè)馬上奔三的老爺們,一同...
    碧落泉雩閱讀 521評論 1 2

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