【发布时间】:2014-02-28 00:36:52
【问题描述】:
在 Sinatra 中使用 redirect 和 redirect to 有什么区别?他们似乎都默认使用相同的状态代码。 to '/url' 位是否只是为了使该方法更具可读性而提供的一些语法上的好处?
【问题讨论】:
在 Sinatra 中使用 redirect 和 redirect to 有什么区别?他们似乎都默认使用相同的状态代码。 to '/url' 位是否只是为了使该方法更具可读性而提供的一些语法上的好处?
【问题讨论】:
redirect 方法发送 HTTP 标头以将客户端重定向到给定 URL,传递的参数应该是带有主机的完全限定 URL(例如 http://example.com/path,而不仅仅是 /path)。
to 方法将路径转换为 Sinatra 应用程序的完整 URL,从而允许在 redirect 中使用生成的 URL。例如。 to('/path') 将变为 http://yoursinatraapp/path。
【讨论】:
to 是uri 方法的别名,该方法构造绝对url:sinatrarb.com/intro.html#Generating%20URLs 和github.com/sinatra/sinatra/blob/v1.4.4/lib/sinatra/base.rb#L281。