在 Controller 中删除服务器端 Cookie 时出现问题

Problem deleting server side cookies in Controller

提问人:Rockwell Rice 提问时间:6/24/2020 最后编辑:Rockwell Rice 更新时间:6/25/2020 访问量:51

问:

对于应用程序,如果用户选择不允许 cookie,我需要删除两个服务器端生成的 cookie。我可以检测 cookie,获得同意设置,一切都很好。但是,当我尝试删除现有 cookie 时,它们不会删除。我遇到的是,调用应该有效,如果在创建时添加了域,我必须包含它。但是,当我像这样包含它时:cookies[:cookie_name].delete

cookies.delete :cookie_name, domain: 'www.domain_set_on_cookie.com'

我收到一个错误,即发送了 2 个参数,而应该只有一个。仅删除域部分也不会删除 cookie,尽管不会抛出错误。Cookie 的设置如下:

cookies[:cookie_name] = {
  value: SecureRandom.uuid,
  expires: 20.years.from_now,
  domain: 'www.domain_set_on_cookie.com',
  httponly: true
}

cookie 的值如下所示:

6o2843rowdf5-20ce-4d0b-azzf-49b91Zccnd771d7

如果有人能看到我在这里缺少什么,以便让这个饼干消失并提出建议,将不胜感激,谢谢!

Ruby-on-Rails 饼干 Ruby-on-Rails-3.2

评论

0赞 max 6/25/2020
域名中有一个空格,我假设这只是示例中的错误是否正确?
0赞 Rockwell Rice 6/25/2020
是的,这只是一个错别字,我实际上对其进行了硬编码以确保它们匹配并且它仍然不会消失

答: 暂无答案