32 lines
670 B
Go
32 lines
670 B
Go
package handlers
|
||
|
||
import (
|
||
"net/http"
|
||
)
|
||
|
||
func LogoutHandler(w http.ResponseWriter, r *http.Request) {
|
||
if r.Method != http.MethodPost {
|
||
http.Error(w, "Метод не поддерживается", http.StatusMethodNotAllowed)
|
||
return
|
||
}
|
||
|
||
// Удаляем cookie с токеном
|
||
http.SetCookie(w, &http.Cookie{
|
||
Name: "pb_auth",
|
||
Value: "",
|
||
Path: "/",
|
||
MaxAge: -1,
|
||
})
|
||
|
||
// Удаляем cookie с ID пользователя
|
||
http.SetCookie(w, &http.Cookie{
|
||
Name: "user_id",
|
||
Value: "",
|
||
Path: "/",
|
||
MaxAge: -1,
|
||
})
|
||
|
||
// Перенаправляем на страницу логина
|
||
http.Redirect(w, r, "/login", http.StatusSeeOther)
|
||
}
|