我有一个应用程序,我尝试adhere to REST。
该应用会收到不属于该应用的外部链接请求,因此该操作的唯一目的是将请求重定向到外部网址。
我的建议是拥有以下控制器/操作:redirects_controller#create
。
我的想法是正确的还是应该是show
行动?
答案 0 :(得分:0)
REST(除了Rails)是关于使用正确的HTTP方法进行正确的操作。 Rails部分只是对给定的HTTP方法使用传统的控制器动作。
因此,如果您正在执行301或302重定向到另一个页面,哪些浏览器通过向重定向响应的位置标头中的URL发出GET请求来处理,请在show
操作中执行此操作。这将允许用户的浏览器在适当时缓存其他页面,并在重定向之前不通知用户。
(There is a way to redirect POSTs,但你没有提到它,所以我希望你说的是常规的301/302重定向。)
答案 1 :(得分:0)
来自Java背景,REST操作必须与CRUD操作相关。在您的意图重定向到另一个页面的情况下,不会更改资源的请求必须绑定到示例中的GET动词或节目。
如果您要创建新资源,则可以使用POST。 可以在 Richardson's rest maturity model level 2
中找到更详细的说明