首页 > 解决方案 > Rails 操作可以重定向 *with* JSON 有效负载吗?

问题描述

我有一个使用 url 参数重定向的 Rails 端点。

代码非常简单:

def success_redirect
  redirect_to "#{success_url}/#{encoded_params}"
end

我的同事希望我可以进行相同的重定向,但将参数作为 JSON 发送。

是否有可能做到这一点?不知何故,我找不到有关该主题的任何资源,这似乎很不寻常。

标签: ruby-on-railsjsonredirectpayloadactioncontroller

解决方案


简短的回答 - 这是不可能的。

当您使用redirect_to时,Rails 将statusheader to302locationheader with 设置为您想要访问的 URL。然后,浏览器解释此响应并重定向您。

此外,对于 GET 请求,可以(IMO,不推荐)包含正文(您的 JSON 有效负载)。但是,不是在 Rails 中。


推荐阅读