【问题标题】:On which browsers does work the Rails 3 XSRF protection?Rails 3 XSRF 保护在哪些浏览器上工作?
【发布时间】:2011-06-10 08:28:42
【问题描述】:

Rails 3 中的 link_to 方法有一个很好的 XSRF 保护,它可以生成一些自定义 HTML5 标记、一个哈希安全密钥和一堆 JavaScript,它可以使用更安全的 PUT/DELETE/POST 方法而不是 HTTP GET 来发送请求。太好了。

但我怀疑这适用于哪些浏览器?我的意思是当 JavaScript 被禁用时它肯定不起作用。但是浏览器需要是 HTML5 吗? AFAIK 有许多浏览器实现了 HTML5 的某些部分,并且由于这种技术只需要一个自定义 HTML 标签,它可以在旧版本上工作。

是否有任何类型的文档描述了这种兼容性?我感兴趣:

  • Chrome/Safari
  • 火狐
  • MSIE
  • 歌剧

谢谢

【问题讨论】:

    标签: ruby-on-rails ruby html csrf


    【解决方案1】:

    如果您希望链接为 POST/PUT/DELETE,则链接仅包含该特殊的 HTML5 数据。常规链接只能是 GET。 JavaScript 依赖是因为这个,而不是因为 XSRF 解决方案。

    自定义 HTML5 属性(不是标签)只是名为“data-...”的属性。浏览器在 HTML5 之前确实接受自定义属性,但现在有一种方法可以添加自定义属性而不会危及 HTML5 的有效性。

    因此,对于您提供的浏览器列表:所有浏览器都可以正常工作,直到 IE6(除非您禁用 JavaScript)。

    【讨论】:

    • 是的,抱歉,不是标签而是属性。感谢您的解释。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-09-09
    • 2013-07-09
    • 1970-01-01
    • 1970-01-01
    • 2016-04-30
    • 1970-01-01
    • 2023-04-03
    相关资源
    最近更新 更多