基本身份驗(yàn)證不是為管理注銷而設(shè)計(jì)的。你能做到,但不是完全自動(dòng)的。
您要做的是讓用戶單擊一個(gè)注銷鏈接,并發(fā)送一個(gè)‘401未經(jīng)授權(quán)’的響應(yīng),使用相同的領(lǐng)域和相同的URL文件夾級(jí)別,您發(fā)送的正常401請(qǐng)求登錄。
必須指示他們下一步輸入錯(cuò)誤的憑證。一個(gè)空白的用戶名和密碼,作為回應(yīng),你發(fā)送回一個(gè)“你已經(jīng)成功注銷了”頁(yè)面。然后,錯(cuò)誤/空白憑據(jù)將覆蓋以前正確的憑據(jù)。
簡(jiǎn)而言之,注銷腳本反轉(zhuǎn)登錄腳本的邏輯,只有當(dāng)用戶返回成功頁(yè)面時(shí)才返回。不是通過(guò)正確的證件。
問(wèn)題是,“不要輸入您的密碼”密碼框是否會(huì)滿足用戶的接受。試圖自動(dòng)填充密碼的密碼管理器也會(huì)阻礙您的到來(lái)。
編輯以響應(yīng)注釋:重新登錄是一個(gè)稍微不同的問(wèn)題(除非您顯然需要兩個(gè)步驟的注銷/登錄)。您必須拒絕(401)第一次嘗試訪問(wèn)重新登錄鏈接,而不是接受第二次訪問(wèn)(它可能具有不同的用戶名/密碼)。有幾種方法你可以做到這一點(diǎn)。一種是將當(dāng)前用戶名包括在注銷鏈接(例如。/relogin?username),并在憑據(jù)與用戶名匹配時(shí)拒絕。