cookie介绍:

1. cookie的简单介绍就是把用户的登录信息缓存在本机的浏览器中,且最大容量为4KB,

2. 这种存储是不安全的,通常一般会进行加密处理,但是依旧不能做到安全,所以一般要优先考虑网站的安全性以及应用场景。

3. 大多数浏览器最多可以存储20个cookie的值,如果试图创建更多的cookie,则旧的cookie值会被覆盖。

4.

aspx前端代码:

 <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Login.aspx.cs" Inherits="CZBK.ItcastProject.WebApp._2018_11_30.Login" %>

 <!DOCTYPE html>

 <html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title></title>
</head>
<body>
<form id="form1" runat="server">
<div>
用户名:<input type="text" name="txtName" value="<%=LoginUserName%>"/><br />
密码;<input type="password" name="txtPwd" /><br />
<input type="submit" value="登录" /> </div>
</form>
</body>
</html>

处理cookie的详细代码:

 using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls; namespace CZBK.ItcastProject.WebApp._2018_11_30
{
public partial class Login : System.Web.UI.Page
{
public string LoginUserName { get; set; }
protected void Page_Load(object sender, EventArgs e)
{
          //如果是post请求
if (IsPostBack)
{ //从前端获取txtname的值,存放在cookie中,并且分配一个有效期
string userName = Request.Form["txtName"];
//写到Cookie中. Response 写
Response.Cookies["userName"].Value = Server.UrlEncode(userName);
Response.Cookies["userName"].Expires = DateTime.Now.AddDays(); }//如果是get请求,cookie缓存区取出已经存储的值
else
{
//读Cookie。 Request 读
if (Request.Cookies["userName"] != null)
{
string name =Server.UrlDecode(Request.Cookies["userName"].Value);
LoginUserName = name;
Response.Cookies["userName"].Value = Server.UrlEncode(name);
Response.Cookies["userName"].Expires = DateTime.Now.AddDays();
}
}
}
}
}

多值cookie的写入和接收:

                     //多值cookie
Response.Cookies["userInfo"]["userName"] = Server.UrlEncode("锦大大");
Response.Cookies["userInfo"]["lastvisit"] = DateTime.Now.ToString(); //保存当前时间
Response.Cookies["userInfo"].Expires = DateTime.Now.AddDays(); //设置其有效期
 //接收多值cookie
string user = Server.HtmlEncode(Request.Cookies["userInfo"]["userName"]);

cookie常用的相关方法:

 getDomain();返回cookie的域名.
getMaxAge();返回cookie的存活时间
getName();返回cookie的名字
getPath();返回cookie适用的路径
getSecure();如果浏览器通过安全协议发送Cookie将返回true值,如果浏览器使用标准协议刚返回false值
getValue();返回cookie的值
getVersion();返回cookie所遵从的协议版本setComment(String purpose);设置cookie的注释
setPath(String url);设置Cookie的适用路径
setSecure(Boolean flag);设置浏览器是否仅仅使用安全协议来发送cookie,例如使用Https或ssl
setValue(String newvalue);cookie创建后设置一个新的值
setVersion(int v);设置cookie所遵从的协议版本。

cookie的常用操作的更多相关文章

  1. java:Cookie(常用操作),Cookie和Session免登录实例

     1.常用操作: package cn.zzsxt.lee.web.cookie; import java.io.IOException; import javax.servlet.ServletEx ...

  2. selenium常用操作,查找元素,操作Cookie,获取截图,获取窗口信息,切换,执行js代码

    目录: 1. 常用操作 2. 查找元素 3. 操作Cookie 4. 获取截图 5. 获取窗口信息 6. 切换 7. 执行JS代码 简介 selenium.webdriver.remote.webdr ...

  3. python运维开发(十九)----Django后台表单验证、session、cookie、model操作

    内容目录: Django后台表单验证 CSRF加密传输 session.cookie model数据库操作 Django后台Form表单验证 Django中Form一般有2种功能: 1.用于做用户提交 ...

  4. 【WebDriver】WebDriver 常用操作

    WebDriver 常用操作 1 浏览器操作 2 窗口和弹框操作 3 cookies 操作 4 简单对象的定位 5 页面元素操作 6 鼠标事件 7 键盘事件 1 浏览器操作 #属性: driver.c ...

  5. fiddler常用操作之断点

    fiddler常用操作断点 标签(空格分隔): fiddler断点 一.断点: 1.为什么要打断点呢? 比如一个购买的金额输入框,输入框前端做了限制100-1000,那么我们测试的时候,需要测试小于1 ...

  6. fiddler常用操作

    fiddler常用操作 标签(空格分隔): fiddler fidrdler抓取https请求: fiddler是一个很好的抓包工具,但是默认的是抓取HTTP的,对于pc的https的会提示网页不安全 ...

  7. python+selenium实现动态爬取及selenuim的常用操作

    应用实例可以参考博客中的12306自动抢票应用 https://www.cnblogs.com/mumengyun/p/10001109.html 动态网页数据抓取 什么是AJAX: AJAX(Asy ...

  8. JavaWeb request对象常用操作

      JavaWeb request对象常用操作 CreateTime--2018年6月1日16点47分 Author:Marydon 一.前提 import javax.servlet.http.Ht ...

  9. java集成开发环境常用操作集

    1.简单搭建maven集成开发环境 一.     Jetty安装 下载地址(包涵windows和Linux各版本,Jetty9需要JDK7):http://download.eclipse.org/j ...

随机推荐

  1. 使用jwt

    jwt:json web token 使用jwt的好处1,无状态2解耦3,更适合于移动端Android,ios4,性能更好5,能够不考虑csrf攻击 ①,客户端请求 Date date = new D ...

  2. SpringMVC MultiActionController 默认方法名解析器

    MultiActionController默认方法名解析器是指在请求的地址中加入指定方法名称 MultiActionController类具有一个属性methodNameResolver,方法名解析器 ...

  3. Oracle之表的相关操作

    #添加字段 格式: alter table table_name add column_name datatype; 例子: alter table userinfo ); desc userinfo ...

  4. django中的模型详解-1

    在说明django模型之前,首先来说明一下django的生命周期,也就是一个请求到达django是如何处理的.[暂时不包含中间件] 浏览器的请求---->到达django中的urls中找到对应的 ...

  5. 从零开始部署一个 Laravel 站点

    从零开始部署一个 Laravel 站点 此文章为原创文章,未经同意,禁止转载. PHP Laravel Web Git 在阿里云买ECS的时候选择自己习惯的镜像系统,我一般都是使用Linux Ubun ...

  6. golang中tcp socket粘包问题和处理

    转自:http://www.01happy.com/golang-tcp-socket-adhere/ 在用golang开发人工客服系统的时候碰到了粘包问题,那么什么是粘包呢?例如我们和客户端约定数据 ...

  7. python,pycharm安装

    下载python地址:https://www.python.org/downloads/release/python-371/ 安装python ***python安装目录下的scripts加入环境变 ...

  8. hog cython

    pip安装cython之后,将下面代码写入hogtest2.pyx文件(我通过改文件后缀新建) import numpy as np from PIL import Image cimport num ...

  9. ERROR 3009 (HY000): Column count of mysql.user is wrong. Expected 45, found 42. Created with MySQL 50560, now running 50725. Please use mysql_upgrade to fix this error.

    centos7.5 登入mysql,进行授权报错 问题: mysql> grant all privileges on *.* to 'lvhanzhi'@'%' identified by ' ...

  10. LOIC

    Pre: http://sourceforge.net/projects/loic Getting the Software To DDos, first your going to have to ...