<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 


<html xmlns="http://www.w3.org/1999/xhtml"> 


<head> 

<meta http-equiv="Content-Type" content="text/html; charset=gb2312" /> 

<title>login</title>

<script type="text/javascript">

//新建cookie。

//hours为空字符串时,cookie的生存期至浏览器会话结束。

hours为数字0时,建立的是一个失效的cookie,这个cookie会覆盖已经建立过的同名、同path的cookie(假设这个cookie存在)。

//设置cookie

function setCookie(name,value,hours,path){  

    var name = escape(name);  

    var value = escape(value);

    var expires = new Date();

    expires.setTime(expires.getTime() + hours*3600000);  

    path = path == "" ? "" : ";path=" + path;  

    _expires = (typeof hours) == "string" ?

"" : ";expires=" + expires.toUTCString();  


    document.cookie = name + "=" + value + _expires + path;  

}  

//获取cookie值  

function getCookieValue(name){  

    var name = escape(name);  

    //读cookie属性,这将返回文档的全部cookie  

    var allcookies = document.cookie;         

    //查找名为name的cookie的開始位置  

    name += "=";  

    var pos = allcookies.indexOf(name);      

    //假设找到了具有该名字的cookie,那么提取并使用它的值  

    if(pos != -1){                                      //假设pos值为-1则说明搜索"version="失败  


        var start = pos + name.length;                  //cookie值開始的位置  

        var end = allcookies.indexOf(";",start);        //从cookie值開始的位置起搜索第一个";"的位置,即cookie值结尾的位置  


        if (end == -1) end = allcookies.length;   //假设end值为-1说明cookie列表里仅仅有一个cookie  


        var value = allcookies.substring(start,end); //提取cookie的值  

        return unescape(value);                         //对它解码        

    }else

  return "";          //搜索失败。返回空字符串  

}  

//删除cookie  

function deleteCookie(name,path){  

    var name = escape(name);  

    var expires = new Date(0);  

    path = path == "" ? "" : ";path=" + path;  

    document.cookie = name + "="+ ";expires=" + expires.toUTCString() + path;  

}

function $(objStr){return document.getElementById(objStr);}  

window.onload = function(){

   //分析cookie值,显示上次的登陆信息  

    var userNameValue = getCookieValue("userName");  

    $("userName").value = userNameValue;  

   var passwordValue = getCookieValue("password");  

    $("password").value = passwordValue;      

   //写入点击事件  

    $("submit").onclick = function()  

    {  

        var userNameValue = $("userName").value;  

        var passwordValue = $("password").value;  

        //server验证(模拟)      

        var isAdmin = userNameValue == "admin" && passwordValue =="123456";  

        var isUserA = userNameValue == "userA" && passwordValue =="userA";  

        var isMatched = isAdmin || isUserA;  

        if(isMatched){

            if( $("saveCookie").checked){    

                setCookie("userName",$("userName").value,24,"/");

                setCookie("password",$("password").value,24,"/");

            }

            alert("登陆成功,欢迎你," + userNameValue + "!");  

            self.location.replace("welcome.html");  

        }  

        else alert("username或password错误。请又一次输入!");      

    }  

}

</script> 

</head> 

<body> 

<form action=""> 

<p> 

    <span>UserName:</span> 

   <input id="userName" type="text" value=""/></p> 

<p> 

    <span>Password:</span> 

    <input id="password" type="password" value=""/></p> 

<p> 

    <span style="font-size:12px; color:blue;">记住password</span> 

   <input id="saveCookie" type="checkbox" value="" /></p> 

<p> 

    <input id="submit" type="button" value="GO" /> 

</p> 

</form> 

</body> 

</html>

浏览器登录cookie的更多相关文章

  1. IE/Firefox/Chrome等浏览器保存Cookie的位置

    IE/Firefox/Chrome等浏览器保存Cookie的位置 原文  http://smilejay.com/2013/04/browser-cookie-location/   前面写了篇长文( ...

  2. 删除浏览器浏览器删除cookie方法

    上班之余抽点时光出来写写博文,希望对新接触的朋友有帮助.今天在这里和大家一起学习一下删除浏览器 文章目录导航 适用范围及演示工具 什么是cookie? cookie有什么作用? ie6/ie7/ie8 ...

  3. c#获取新浪微博登录cookie

    用新浪微博api收集数据有诸多限制,每小时只能调用官方api函数150次,认证也很麻烦.因此想通过爬网页的方式来收集数据.访问新浪微博用户网页首先需要登录,登录获取cookie后可直接获取网页数据,无 ...

  4. 浏览器存储(cookie、localStorage、sessionStorage)

    互联网早期浏览器是没有状态维护,这个就导致一个问题就是服务器不知道浏览器的状态,无法判断是否是同一个浏览器.这样用户登录.购物车功能都无法实现,Lou Montulli在1994年引入到web中最终纳 ...

  5. Python3+Selenium2完整的自动化测试实现之旅(四):Selenium-webdriver操作浏览器、Cookie、鼠标键盘、警示框、设置等待时间、多窗口切换

    本篇学习总结webdriver模块操作浏览器.Cookie.鼠标键盘.警示框.设置等待时间.多窗口切换等方法的使用 1    浏览器控制 Selenium-webdriverAPI提供了对页面元素定位 ...

  6. 关于PHP中浏览器禁止Cookie后,Session能使用吗?

    sessionid是存储在cookie中的,解决方案如下: Session URL重写,保证在客户端禁用或不支持COOKIE时,仍然可以使用Session session机制.session机制是一种 ...

  7. 第三百三十三节,web爬虫讲解2—Scrapy框架爬虫—Scrapy模拟浏览器登录—获取Scrapy框架Cookies

    第三百三十三节,web爬虫讲解2—Scrapy框架爬虫—Scrapy模拟浏览器登录 模拟浏览器登录 start_requests()方法,可以返回一个请求给爬虫的起始网站,这个返回的请求相当于star ...

  8. Postman+Postman interceptor的安装和使用-解决把chrome浏览器登录状态同步到postman进行有依赖的接口测试 Postman 使用方法详解

    Postman+Postman interceptor的安装和使用-解决把chrome浏览器登录状态同步到postman进行有依赖的接口测试   问题引入:做接口测试时,有依赖关系的接口往往不好测试( ...

  9. 十二 web爬虫讲解2—Scrapy框架爬虫—Scrapy模拟浏览器登录—获取Scrapy框架Cookies

    模拟浏览器登录 start_requests()方法,可以返回一个请求给爬虫的起始网站,这个返回的请求相当于start_urls,start_requests()返回的请求会替代start_urls里 ...

随机推荐

  1. IO模型同步与异步阻塞与非阻塞的区别

    同步异步的区别 关注点:同步和异步关注的是消息通信机制 同步:所谓同步,就是在发出一个*调用*时,在没有得到结果之前,该*调用*就不返回.但是一旦调用返回,就得到返回值了.换句话说,就是由*调用者*主 ...

  2. remeber me即记住我功能

    1.登录过程中的记住我功能如图: 2.这样在登录认证的时候,客户端会传递两个cookie:remember_token和Tsession 3.即使客户端不传递cookie中的Tsession,只传递r ...

  3. JAVA之接口与抽象类区别

    1.概述 一个软件设计的好坏,我想很大程度上取决于它的整体架构,而这个整体架构其实就是你对整个宏观商业业务的抽象框架,当代表业务逻辑的高层抽象层结构 合理时,你底层的具体实现需要考虑的就仅仅是一些算法 ...

  4. osg节点统计方法(点数 面数) 【转】

    void statusNode(osg::ref_ptr<osg::Node> node,int& verNum,int& faceNum){ osg::ref_ptr&l ...

  5. RESTful接口签名认证实现机制

    RESTful接口 互联网发展至今,催生出了很多丰富多彩的应用,极大地调动了人们对这些应用的使用热情.但同时也为互联网应用带来了严峻的考验.具体体现在以下几个方面: 1.     部署方式的改变:当用 ...

  6. CentOS7.4 x64环境Percona-Server-5.6安装

    CentOS7.4 x64环境Percona-Server-5.6安装 下载MySQL $ cd /usr/local/src/ $ wget https://www.percona.com/down ...

  7. 2017.3.31 spring mvc教程(四)全局的异常处理

    学习的博客:http://elf8848.iteye.com/blog/875830/ 我项目中所用的版本:4.2.0.博客的时间比较早,11年的,学习的是Spring3 MVC.不知道版本上有没有变 ...

  8. 13.1Springboot 之 静态资源路径配置

    Spring 静态资源路径是指系统可以直接访问的路径,且路径下的所有文件均可被用户直接读取. 在Springboot中默认的静态资源路径有:classpath:/META-INF/resources/ ...

  9. react-native-router-flux 页面跳转与传值

    1.正向跳转假设情景:从Home页跳转到Profile页面,Profile场景的key值为profile 不带参数: Actions.profile 带参数: Actions.profile({'ke ...

  10. react-native Android 全面屏手机 底部留有一大块黑屏

    解决方案:在AndroidManifest.xml 中 配置 <meta-data android:name="android.max_aspect" android:val ...