【问题标题】:How to redirect REST service from Get to Post?如何将 REST 服务从 Get 重定向到 Post?
【发布时间】:2016-01-28 18:51:25
【问题描述】:

如何将 GET REST 服务重定向到 POST REST 服务。 我正在使用resteasy,我尝试过

  1. Response.seeOther

  2. Response.temporaryRedirect

据我所知,这两种方法都只能发出 GET 请求。

有没有办法使用上述 API 进行 POST 调用? 重定向对我来说很重要,因为我希望浏览器知道新的 URL。

【问题讨论】:

    标签: rest redirect jax-rs resteasy response.redirect


    【解决方案1】:

    简短回答:不要这样做。

    GET 和 POST 具有明确定义的语义。 GET 用于读取资源,而POST 通常用于创建或更新资源。另见this question。

    从GET 重定向到POST 是没有意义的,因为用户应该确保如果他使用GET,他不会更改资源的状态。

    反之,有一种称为POST-Redirect-GET (PRG) 的常见模式,用户在每个POST 创建一个资源后会被重定向到一个新资源。这种模式的一个原因是在用户重新加载页面时避免双重POST。

    【讨论】:

    • 我同意你的看法。我陷入了我没想到的杂草之中。我应该换个思路来解决我的问题。
    猜你喜欢
    • 1970-01-01
    • 2011-03-11
    • 2017-07-02
    • 2019-04-22
    • 2013-04-09
    • 2016-09-15
    • 2012-12-24
    • 1970-01-01
    • 2022-10-26
    相关资源
    最近更新 更多