主干中的服务器端重定向

时间:2014-04-11 20:15:10

标签: javascript node.js backbone.js server-side

我有模型对象:

module.exports = {
 redirectTo: function(params, callback) {
  callback(null, 'home/redirect_to');
 }
}

我可以在不加载页面的情况下重定向用户吗?

它将取决于变量,因此并不总是需要重定向。我现在唯一需要的是从服务器端重定向。

2 个答案:

答案 0 :(得分:0)

只需将HTTP 302回复给客户端即可完成服务器端重定向。

如果您要问的是"如何绕过服务器端重定向以便仍然可以触发您的Backbone回调?",那么我的解决方案将遵循:

例如,当用户在其浏览器上键入URL http://yousite.com/blog/someid时,您希望使用Backbone回调来处理他的请求。然后你可以让你的服务器返回:

<script> window.location="http://yoursite.com#blog/someid"</script>

请注意,我们会将/替换为#

或者,您可以让服务器返回(fragment allowed in Location):

HTTP/1.1 302 Found
Location: http://yoursite.com#blog/someid

然后将触发您的Backbone回调。

答案 1 :(得分:0)

可以使用this.redirectTo(url)

完成