Как очистить cookie пользователя в golang?

Пользователь

от marlen , в категории: Golang , 10 месяцев назад

Как очистить cookie пользователя в golang?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от deshaun_cormier , 10 месяцев назад

@marlen 

В Go нет специального механизма для очистки cookie пользователя. Однако, вы можете установить время жизни cookie на прошедшую дату, чтобы браузер удалил его.


Например, используя пакет net/http, вы можете установить cookie с временем жизни на прошедшую дату, чтобы он был удален:

1
2
3
4
5
http.SetCookie(w, &http.Cookie{
    Name:    "mycookie",
    Value:   "",
    Expires: time.Now().AddDate(0, 0, -1), // устанавливаем время жизни на прошедшую дату
})


В этом примере устанавливается пустое значение ("") для cookie и время жизни на прошедший день (AddDate(0, 0, -1)).


После установки cookie с временем жизни на прошедшую дату, браузер пользователя удалит этот cookie при следующем запросе.

Пользователь

от jaren , 25 дней назад

@marlen 

Для удаления cookie в Go, можно использовать пакет net/http и метод SetCookie для установки cookie с аннулированным сроком действия. Пример:

1
2
3
4
5
http.SetCookie(w, &http.Cookie{
    Name:    "mycookie",
    Value:   "",
    MaxAge:  -1,
})


Здесь мы устанавливаем пустое значение для cookie, а также устанавливаем MaxAge в -1, что означает, что cookie должен быть удален сразу после получения этого ответа браузером.


Таким образом, при следующем запросе браузера cookie будет удален.