
登錄注冊
流程
1.過程:打開sign-up注冊,后端寫數(shù)據(jù),注冊成功;打開sign-in登錄;選項(xiàng)不為空;填完后請求;后端驗(yàn)證(前端也可以驗(yàn));黑客可以通過curl發(fā)請求,繞過http協(xié)議;
2.前端向后端傳數(shù)據(jù)的過程;前端把所有數(shù)據(jù)變成字符串,然后后端按照它的結(jié)構(gòu)把字符串解析出來;

前端

后端
3.登錄就是到數(shù)據(jù)庫找有沒有一模一樣的數(shù)據(jù),有就登陸;

代碼
4.登錄成功后寫cookie
特點(diǎn):
- 服務(wù)器通過 Set-Cookie 響應(yīng)頭設(shè)置 Cookie
- 瀏覽器得到 Cookie 之后,每次請求都要帶上 Cookie
- 服務(wù)器讀取 Cookie 就知道登錄用戶的信息(email)
API
1.decodeURIComponent(value)
函數(shù)可對 encodeURIComponent() 函數(shù)編碼的 URI 進(jìn)行解碼。
2.fs.writeFileSync('./db/users', usersString)必須存字符串,不能存對象
小知識
1.preserve log阻止log刷新
2.cookie的值可以被改
3.replace生成新的字符串
4.let {email, password, password_confirmation} = hash;給hash對象增添key