javascript - 为什么 HTTP 删除需要 javascript 才能工作?

标签 javascript ruby-on-rails authentication devise http-delete

我在 Rails 中使用 Devise,在设置 sign_out 函数时遇到了错误。我注意到,它的发生是因为具有 sign_out 链接的页面跳过了布局,因此 Javascript 处于非事件状态。通过使用以下命令启用 javascript:`

<%= javascript_include_tag :defaults %>

一切正常。

为什么会这样?

最佳答案

链接(通常)总是收到请求。为了让链接发送非获取请求,您需要一些 javascript 来修改链接的行为。

此外,浏览器通常仅支持 GET/POST 请求,因此 Rails 通过向帖子添加 _method 字段来伪造其他方法(DELETE、PUT 等)。

关于javascript - 为什么 HTTP 删除需要 javascript 才能工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10896762/

相关文章:

ruby-on-rails - 什么是有效的 URL 映射实现,为什么?

ruby-on-rails - 运行 byebug 8.2.1 Mac M1 时出错

javascript - thinkster.IO 教程第 6 章 - 'Auth' 未定义

javascript - 在 html 中使用函数调用 - 好还是坏?

javascript - Chrome 扩展持久弹出窗口最佳实践

javascript - CKEditor div 元素被替换而不是填充

ruby-on-rails - 表单内 'has many' 关联中记录的字段

cocoa-touch - 无登录客户端/服务器架构(iOS)

jquery - 返回部分 View 的 Controller 操作会在授权失败时插入登录页面

javascript - Jcrop 不适用于 ie 8