Удаление файлов cookie из контроллера

Я установил некоторые значения файлов cookie в своей форме с помощью jQuery. Я могу легко прочитать их в своем контроллере Rails с помощью метода cookies . Когда я вызываю cookies.delete (: my_key) , они исчезают, когда я снова вызываю cookies . Но когда я перезагружаю страницу, куки снова возвращаются.

Есть ли способ навсегда удалить куки из моего контроллера?

РЕДАКТИРОВАТЬ

Это очень странно, так как я смотрю на ответ заголовки, и они, похоже, удаляют cookie. Возможно это' s, потому что это запрос 302?

Set-Cookie: my_key=; path=/; expires=Thu, 01-Jan-1970 00:00:00 GMT
29
задан Dex 24 May 2011 в 00:25
поделиться

1 ответ

Например, ваш файл cookie выглядит следующим образом

cookies[:foo] = {:value => 'bar', :domain => '.text.com'}

Когда вы пробовали этот файл => cookies.delete :foo

В журналах будет указано => Cookie set: foo=; path=/; expires=Thu, 01 Jan 1970 00:00:00 GMT

Обратите внимание, что домен отсутствует. Пробовал таким образом

cookies.delete: foo,: domain => '.text.com'

Функция =>

# Removes the cookie on the client machine by setting the value to an empty string
# and setting its expiration date into the past.  Like []=, you can pass in an options
# hash to delete cookies with extra data such as a +path+.
def delete(name, options = {})
  options.stringify_keys!
  set_cookie(options.merge("name" => name.to_s, "value" => "", "expires" => Time.at(0)))
end
38
ответ дан 28 November 2019 в 01:33
поделиться
Другие вопросы по тегам:

Похожие вопросы: