如何根据 Spring boot JSON Rest API 的响应在 HTMX 中执行重定向?

问题描述 投票:0回答:1

我正在检查 Htmx + Spring 的示例。所有示例都使用服务器端模板引擎(如 Thymeleaf 或 Jte)。

Htmx 期望来自 Spring 的 HTML 响应,但如今,大多数 Spring 应用程序都提供带有 JSON 响应的 Rest API。

有没有办法根据 Spring boot Rest API 的 Rest Response 在 HTMX 中进行重定向?

Basic requirement:
Login.html 
    -> on login action using hx-post="/login" 
        -> Check the response
            -> If successful, then redirect to the dashboard.html 
            -> If error, stay on the same page and show an error message.

Manage-User.html
   -> Submit new user request hx-post="/users"
        -> Check the response
            -> If successful, then go to view user page with data (using client-side template engine like moustache)
            -> If error, stay on the same page and show the error message.

我知道可以通过编写JavaScript来实现,但我想知道是否还有其他方法。

Htmx 支持 hx-redirect,但只有当服务器发送标头时它才会起作用,但无法根据响应代码/响应数据定义重定向。

spring-boot spring-restcontroller htmx
1个回答
0
投票

Htmx 支持 hx-redirect,但只有当服务器发送标头时它才会起作用,但无法根据响应代码/响应数据定义重定向

可以使用

<meta http-equiv="refresh">
标签在客户端进行重定向,但 HTMX 默认情况下不支持
<head>
head-support
扩展可能有助于解决这个问题。


但是我们似乎正在尝试实现一个路由,但它超出了 HTMX 的范围:HTMX 客户端路由?

我发现了一些尝试,但现在都已经过时了:

© www.soinside.com 2019 - 2024. All rights reserved.