javascript - 如果未登录,则重定向 html 页面

标签 javascript html redirect authentication location

我的网页上有简单的登录表单。它使用 javascript 登录用户并且工作正常。 问题是用户直接在地址栏中输入着陆页网址,他无需登录即可直接访问该页面。如果他没有登录,我想将他重定向到登录页面。 下面是loding和目标页面的链接。

登录:http://samdesign.comli.com/protected/index.html

目标:http://samdesign.comli.com/protected/user-soft.html

下面是使用的脚本..

<form>
<table align=center>
  <tr>
     <td>Username:</td>
     <td><input type="text" name="username" style="background:#bfbfbf;color:#212121;border-color:#212121;" onFocus="this.style.background = '#ffffff';" onBlur="this.style.background = '#bfbfbf';"></td>
  </tr>

  <tr>
     <td>Password:</td>
     <td><input type="password" name="password" style="background:#bfbfbf;color:#212121;border-color:#212121;" onFocus="this.style.background = '#ffffff';" onBlur="this.style.background = '#bfbfbf';"></td>
  </tr>

  <tr>
  <td></td>
  <td align=right><input type="button" value="Login" onClick="Login(this.form);" style="background:#bfbfbf;color:#000000;border-color:#212121;" onMouseOver="this.style.color = '#404040';" onMouseOut="this.style.color = '#000000';" onFocusr="this.style.color = '#404040';" onBlur="this.style.color = '#000000';"></td>
  </tr>
</table>
</form>

脚本是这个

function Login(form) {
username = new Array("numair","sam","u3","u4","u5","u6","u7","u8","u9","u10","temporary");
password = new Array("nk1994","sf1993","p3","p4","p5","p6","p7","p8","p9","p10","user");
page = "/protected/user-soft.html";
if (form.username.value == username[0] && form.password.value == password[0] || form.username.value == username[1] && form.password.value == password[1] || form.username.value == username[2] && form.password.value == password[2] || form.username.value == username[3] && form.password.value == password[3] || form.username.value == username[4] && form.password.value == password[4] || form.username.value == username[5] && form.password.value == password[5] || form.username.value == username[6] && form.password.value == password[6] || form.username.value == username[7] && form.password.value == password[7] || form.username.value == username[8] && form.password.value == password[8] || form.username.value == username[9] && form.password.value == password[9] || form.username.value == username[10] && form.password.value == password[10]) {
self.location.href = page;
}
else {
alert("Either the username or password you entered is incorrect.\nPlease try again.");
form.username.focus();
}
return true;
}

谁能帮忙举个例子?

最佳答案

// Put this in your login function, just before the redirect
var sessionTimeout = 1; //hours
var loginDuration = new Date();
loginDuration.setTime(loginDuration.getTime()+(sessionTimeout*60*60*1000));
document.cookie = "CrewCentreSession=Valid; "+loginDuration.toGMTString()+"; path=/";


// Put this at the top of index page
if (document.cookie.indexOf("CrewCentreSession=Valid") == -1) {
  location.href = "/Login.html";
}

关于javascript - 如果未登录,则重定向 html 页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19333043/

相关文章:

javascript - 需要有关嵌套 Promises.all 的建议

javascript - 检查元素是否有 href 如果它不应该为空 Cypress.io

javascript - 单击此按钮后,将一个类添加到特定类

javascript - $.ajax 中未传递全局 js 变量

javascript - 函数式编程是否使用对象数据结构?

jquery - Vimeo 风格下拉内容/下拉菜单

html - 如何强制文本在下一行中断?

javascript - document.referrer 引用超出我的函数范围的 URL

javascript - 在 http 重定向中维护 anchor

redirect - 将 Umbraco 'redirect to' 更改为使用 301 而不是 302