asp.net

//传进来的 public BaseController(BaseHttpHandler handler, HttpContext context)
// { //根据地址设置cookie
string CityName = "";
if (context.Request.Cookies["_AreaKey"] == null || context.Request.Cookies["_AreaValue"] == null)
{
var companyID = ConvertHelper.ToInt(context.Request.QueryString["CompanyID"]);
HttpCookie CityCookieKey = new HttpCookie("_AreaKey");
HttpCookie CityCookieValue = new HttpCookie("_AreaValue");
HttpCookie CityCookieName = new HttpCookie("_AreaName"); if (companyID == )
{
CityCookieKey.Value = "FZ";
CityCookieValue.Value = "";
CityName = "福州";
CityCookieName.Value = CityName;
}
else if (companyID == )
{
CityCookieKey.Value = "XM";
CityCookieValue.Value = "";
CityName = "厦门";
CityCookieName.Value = CityName; }
else
{
//获取分配中心地址 跳转
context.Response.Redirect(ConfigurationManager.AppSettings["WebCenter"]);
}
CityCookieKey.Expires = DateTime.Now.AddDays();
CityCookieValue.Expires = DateTime.Now.AddDays();
CityCookieName.Expires = DateTime.Now.AddDays();
CityCookieKey.Path = "/";
CityCookieValue.Path = "/";
CityCookieName.Path = "/";
context.Response.Cookies.Add(CityCookieKey);
context.Response.Cookies.Add(CityCookieValue);
context.Response.Cookies.Add(CityCookieName);
}
else
{
var CityValue = ConvertHelper.ToInt(context.Request.Cookies["_AreaValue"].Value); if (CityValue == )
{
CityName = "福州";
}
if (CityValue == )
{
CityName = "厦门";
}
}

如果是顶级域名下的二级域名跨域  可以设置cookie的domain

js

//写cookies
function setCookie(name, value,time) {
var Days = time||365;
var exp = new Date();
exp.setTime(exp.getTime() + Days * 24 * 60 * 60 * 1000);
document.cookie=name+"="+escape(value)+";expires="+exp.toGMTString()+";path=/;";
}
//读取cookies
function getCookie(sName) {
var aCookie = document.cookie.split("; ");
for (var i = 0; i < aCookie.length; i++) {
var aCrumb = aCookie[i].split("=");
if (sName == aCrumb[0])
return unescape(aCrumb[1]);
}
return null;
} //删除cookies
function delCookie(name) {
var exp = new Date();
exp.setTime(exp.getTime() + -1 * 24 * 60 * 60 * 1000);
var cval = getCookie(name);
if (cval != null)
document.cookie = name + "=;expires=" + exp.toGMTString() + "; path=/;";
}
//清楚所有cookie
function clareCookie() { var strCookie = document.cookie;
var arrCookie = strCookie.split("; "); // 将多cookie切割为多个名/值对
for (var i = 0; i < arrCookie.length; i++) { // 遍历cookie数组,处理每个cookie对
var arr = arrCookie[i].split("=");
if (arr.length > 0)
delCookie(arr[0]);
}
}

传智demo

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._2015_5_31
{
public partial class CookieDemo : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
//Cookie:是一个客户端状态保持机制,(网站的数据是存在客户端),
//与隐藏域与ViewState对象都属于这种客户端状态保持,Cookie中存储的是关于网站相关的文本字符串数据。
//Cookie的存储方式有两种,如果不指定过期时间,那么存储在客户端浏览器内存中,如果指定了过期时间,
//那么存储在客户端的磁盘上。Cookie是与具体的网站有关的,如果我们将Cookie设置了过期时间,
//那么当用户在指定时间内访问我们的网站,那么属于我们网站的Cookie数据会放在请求报文中发送过来,
//其它网站的Cookie不会发送。 //创建Cookie.
// Response.Cookies["cp1"].Value = "itcast"; //创建Cookie并且指定过期时间.
//Response.Cookies["cp2"].Value = "laowang";
//Response.Cookies["cp2"].Expires = DateTime.Now.AddDays(3); //删除Cookie
// Response.Cookies["cp2"].Expires = DateTime.Now.AddDays(-1); //Cookie跨域(域名)
Response.Cookies["cp3"].Value = "laowang";
//主域名的cookie会自动分享给子域名,但是子域名的不会,所以在这里设置主域名,就实现跨域了
// Response.Cookies["cp3"].Domain = "xxx.com";//设置主域的。
Response.Cookies["cp3"].Path = "/2015-5-31";
Response.Cookies["cp3"].Expires = DateTime.Now.AddDays(); //另外一种创建Cookie的方式。
HttpCookie cookie1 = new HttpCookie("cp4","sssss");
cookie1.Expires = DateTime.Now.AddDays();
Response.Cookies.Add(cookie1); }
}
}

cookie 限制  4K  20个浏览器对每个网站存储的限制   300个  有些浏览器对本身存储总数的限制

asp.net js 存取cookie的更多相关文章

  1. JS存取Cookie值

    一:存Cookie //存Cookie document.cookie = "id=" + escape(value); 二:取Cookie //提取Cookie值 functio ...

  2. 通过js 存取cookie

    //存cookie function setCookie(name,value){ var Days = 30; var exp = new Date(); exp.setTime(exp.getTi ...

  3. js获取cookie提取用户名asp.net+html

    JavaScript是运行在客户端的脚本,因此一般是不能够设置Session的,因为Session是运行在服务器端的. 而cookie是运行在客户端的,所以可以用JS来设置cookie. 假设有这样一 ...

  4. JS读写cookie以及中文乱码解决

    本文地址:http://www.cnblogs.com/PiaoMiaoGongZi/p/4092489.html 转载请注明. Js获取所有的cookie信息: var cookiename = d ...

  5. JS存取Cookies值,附自己写的获取cookies的一个方法

    参考:脚本之家 这里对cookie进行了说明,也介绍了几个方法,但是我要取我存的cookie时取不到,他的方法只是针对存的  名字-值,不涉及键,所以自己写了个方法,来满足我的需求. ①你首先的了解C ...

  6. JS存取Cookies值

    这里对cookie进行了说明,也介绍了几个方法,但是我要取我存的cookie时取不到,他的方法只是针对存的  名字-值,不涉及键,所以自己写了个方法,来满足我的需求. 封装了简单存取Cookie: / ...

  7. QQ浏览器、搜狗浏览器等兼容模式下,Asp.NetCore下,Cookie、Session失效问题

    原文:QQ浏览器.搜狗浏览器等兼容模式下,Asp.NetCore下,Cookie.Session失效问题 这些狗日的浏览器在兼容模式下,保存Cookie会失败,是因为SameSiteMode默认为La ...

  8. 在js中将map对象转换成json 和 js对cookie的操作

    在js中将map对象转换成json //msp转objectlet obj= Object.create(null); for (let[k,v] of map) { obj[k] = v; }//o ...

  9. js获取cookie

    js获取cookie 之前用jQuery.cookie来获取cookie,虽然简单,但是项目上又多引用了一个插件,总觉得不太好,下面是我封装的js原生获取cookie的函数. function get ...

随机推荐

  1. Makefile的补充学习2

    Makefile中使用通配符(1)* 若干个任意字符(2)? 1个任意字符(3)[] 将[]中的字符依次去和外面的结合匹配 还有个%,也是通配符,表示任意多个字符,和*很相似,但是%一般只用于规则描述 ...

  2. SPI笔记

    sclk(serial clock):串行时钟 MOSI(master out slave input)  (master   主机) (slave 从机) MISO(master int slave ...

  3. layui中实现上传图片压缩

    一.关于js上传图片压缩的方法,百度有很多种方法,这里我参考修改了一下: function photoCompress(file, w, objDiv) { var ready = new FileR ...

  4. LeetCode OJ:Excel Sheet Column Number(表格列数)

    Related to question Excel Sheet Column Title Given a column title as appear in an Excel sheet, retur ...

  5. LeetCode OJ:3Sum Closest(最接近的三数之和)

    Given an array S of n integers, find three integers in S such that the sum is closest to a given num ...

  6. sphinx使用

    一. 1.先得包含下载的文件 include'./sphinx/api/sphinxapi.php'; $sphinx= new SphinxClient(); $sphinx->SetServ ...

  7. c++指针初探

    业余时间准备重温一下c++,因为在阅读Android源码到native层的时候感觉有点吃力,只是在大学时候很不用心的学过c++,所以重温下以便打好一些编程基础知识,本篇就很简单的对c++的指针做初步的 ...

  8. 旧书重温:0day2【8】狙击windows的异常处理实验

    现在进入0day2的第六章内容 其中第六章的书本内容我都拍成了图片格式放在了QQ空间中(博客园一张一传,太慢了)http://user.qzone.qq.com/252738331/photo/V10 ...

  9. 首次尝试LINUX下的ssh命令:登录和退出

    1:我现在本机安装了centos虚拟机,然后在windows桌面下使用SecureCRT ssh客户端登录我的本地虚拟机,再然后 通过centos下的ssh命令登录局域网内测试机192.168.0.1 ...

  10. Proposition

    提供 \(k\) 个变量 \((k\leq 4)\) 可独立取值为 \(0,1\),两种运算分别等价于 \(\neg a\) 和 \(\neg a \lor b\) . 你需要恰好使用 \(n\) 个 ...