我应该使用哪个 RESTful 操作来重定向到另一个站点?

Which RESTful action should I use to redirect to another site?

我有一个应用程序,我尝试 adhere to REST

该应用收到不属于该应用的外部链接请求,因此该操作的唯一目的是将请求重定向到外部 URL。

我的建议是controller/action:redirects_controller#create

我的想法是否正确,还是应该改为 show 行动?

REST(除了 Rails)是关于使用正确的 HTTP 方法来执行正确的操作。 Rails 部分只是对给定的 HTTP 方法使用传统的控制器操作。

因此,如果您正在执行 301 或 302 重定向到另一个页面,浏览器通过向重定向响应位置 header 中的 URL 发出 GET 请求来处理,请在show 个动作。这将允许用户的浏览器在适当的时候缓存其他页面,并且在重定向之前不通知用户。

(There is a way to redirect POSTs,但你没有提到它,所以我想你是在谈论常规的 301/302 重定向。)

来自 Java 背景,REST 操作必须与 CRUD 操作相关。不更改资源的请求(如您的意图是重定向到另一个页面的情况)必须绑定到 GET 动词或在您的示例中显示。

如果您要创建新资源,您将使用 POST。 更详细的解释可以在 Richardson's rest maturity model level 2

中找到