我在新工具中有一个登录页面,登录后,我被迫重定向到特定页面(固定路径)。我想让它动态化并重定向到用户来自的页面。为此,我将强制重定向页面留空,并编写以下JS代码:
<script type="text/javascript">
window.setTimeout('redirect()',3000);
function redirect(){
window.history.go(-2);
}
</script>
此代码工作正常并且确实将我带到登录到登录页面的页面,但问题是引用页面没有重新加载并使用登录的用户名更新 - 但是如果我手动操作它确实会发生重新加载页面。如何重新加载页面以显示用户名?
document.referrer
对我不起作用,因为我需要重定向到-2页,而不是直接的后页。
答案 0 :(得分:0)
您应该从Web框架处理它,这样如果有任何请求到达该页面,那么请使用框架中的重定向方法来显示所需的页面。
另外
由于您使用的是history
方法,因此您获得了缓存结果。你应该使用类似的东西:
// similar behavior as an HTTP redirect
window.location.replace("http://stackoverflow.com");
或
// similar behavior as clicking on a link
window.location.href = "http://stackoverflow.com";
答案 1 :(得分:0)
要在登录成功后转到特定页面,最简单的方法是将所需的页面URL作为GET参数传递到登录页面:
yoursite.org/login?next=/page/they/came/from
如果登录成功,则然后将用户重定向到/page/they/came/from
(即返回服务器端302重定向)。这就是Django的做法。