可以使用Sinatra重定向和显示内容



我想使用 Sinatra 路由进行重定向并显示重定向消息。所以

http://api.mysite.com/product/123.html 会这样做

redirect product.url, 301

和输出

"redirecting..."

这可能吗,代码会是什么样子?

来自 Sinatra 文档 for redirect

任何其他参数的处理方式都类似于传递给halt的参数:

redirect to('/bar'), 303
redirect 'http://google.com', 'wrong place, buddy'

对于halting

您还可以在停止时指定状态:

halt 410

或身体:

halt 'this will be the body'

或两者兼而有之:

halt 401, 'go away!'

所以你可以做到:

redirect product.url, 301, "redirecting..."

尽管HTTP规范说:

。响应的实体应包含一个简短的超文本注释,其中包含指向新 URI 的超链接。

所以你可能想做:

redirect product.url, 301, "redirecting to #{product.url}..."

最新更新