【问题标题】:Post/Redirect/Get needed if you submit HTML fragments?如果您提交 HTML 片段,则需要发布/重定向/获取?
【发布时间】:2021-01-10 21:05:03
【问题描述】:

过去我使用Post/Redirect/Get 模式:

  • 的 html 已通过 POST 提交到服务器
  • 服务器处理数据。
  • 如果一切正常,服务器会返回 http 302(重定向
  • 客户端将页面重定向到新位置。

如果您通过htmx提交html片段,是否还需要这样做?

【问题讨论】:

    标签: post-redirect-get htmx


    【解决方案1】:

    总的来说,您不需要实现 PRG 模式。

    由于 htmx 使用 AJAX 进行大多数交互,因此浏览器历史记录中没有请求,并且点击刷新不会重新提交 POST(或 DELETE 或其他)。

    也就是说,htmx 尝试与 PRG 模式兼容,并在发生重定向时尝试通过检测:

    https://github.com/bigskysoftware/htmx/blob/1d4c79490e491813ffb780354ec5df6d080b1e09/src/htmx.js#L2146

    https://github.com/bigskysoftware/htmx/blob/1d4c79490e491813ffb780354ec5df6d080b1e09/src/htmx.js#L1851

    如果您执行内联编辑之类的操作:

    https://htmx.org/examples/click-to-edit/

    这一点在很大程度上变得没有意义,因为您可以在与视图 URL 相同的 URL 上拥有编辑 UI。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2010-12-27
      • 1970-01-01
      • 2021-04-12
      • 1970-01-01
      • 2013-08-19
      • 1970-01-01
      • 1970-01-01
      • 2012-12-19
      相关资源
      最近更新 更多