我正在开发一款谷歌应用引擎应用。我在点击按钮时尝试将用户重定向到登录页面。为此,我将window.location.pathname
设置为以下字符串/_ah/login?continue=http%3A//localhost%3A8080/
。但是,chrome会转义字符串,以便完整的URL变为http://localhost:8080/_ah/login%3Fcontinue=http%3A//localhost%3A8080/
,这会产生404错误。我怎样才能防止这种情况发生?有效的网址是http://localhost:8080/_ah/login?continue=http%3A//localhost%3A8080/
答案 0 :(得分:8)
改为设置window.location.href
。
答案 1 :(得分:0)
我认为你最好只使用window.location.href。 Chrome和Firefox window.location.href="/?foofoo"
重定向到<domain:port>/?foofoo
答案 2 :(得分:0)
如果你单独设置位置和查询字符串,你应该得到更好的结果(至少在chrome中)
function redirect_to_login()
{
window.location.href = "/_ah/login";
window.location.search = "?continue=http%3A//localhost%3A8080/";
}
我没有在IE中尝试这个抱歉。它似乎适用于Chrome中的少量测试。
(第二个想法......如果你把它放在一个onclick属性中):
<input type="button"
onclick="window.location.href = '/_ah/login'; window.location.search = '?continue=http%3A//localhost%3A8080/';"
value="Click Me!"
/>