在Web的开发过程中,避免不了要使用cookie,在这里,我们在前台设置cookie,也可以在后台设置cookie,关键是在前后台设置的cookie,怎么去相互读取,代码如下:
  (1)  前台代码
   <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="getFrontSetCookie.aspx.cs"
    Inherits="Study_JavaScript.Html.getFrontSetCookie" %>

<!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 id="Head1" runat="server">
    <title>前后台Cookie的设置和相互读取</title>
</head>
<body>
    <form id="form1" runat="server">
    <asp:ScriptManager ID="SM" runat="server" EnablePageMethods="true">
    </asp:ScriptManager>
    <div>
        <input type="text" id="txtUser" />
        <br />
        <input type="button" id="btnSetCookie" value="设置Cookie" />
        <br />
        <input type="button" id="btnGetCookie" value="读取后台HttpCookie设置的Cookie" />
    </div>
    </form>
</body>
</html>
<script type="text/javascript">
    document.getElementById("btnSetCookie").onclick = function() {
        document.cookie = "UserName=" + document.getElementById("txtUser").value;
        PageMethods.getCookie(getCookie_Success)
    };
    function getCookie_Success(Result) {
        alert(Result);
    }
    
    document.getElementById("btnGetCookie").onclick = function() {
        PageMethods.setCookie(setCookie_Success);
    };
    function setCookie_Success(Result) {
        if (Result) {
            alert(document.cookie);
        }
    }
</script>
(2) 后台代码
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.Services;

namespace Study_JavaScript.Html
{
    public partial class getFrontSetCookie : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {

}
        /// <summary>
        /// 利用Request.Cookies[""]读取前台通过document.cookie设置的cookie
        /// </summary>
        /// <returns></returns>
        [WebMethod]
        public static string getCookie()
        {
            var cook = HttpContext.Current.Request.Cookies["UserName"].Value;
            HttpCookie houtai = new HttpCookie("houtai");
            houtai.Value = "这是后台设置的Cookie";
            return "Cookie读取成功,前台设置的Cookie为" + cook;
        }
        /// <summary>
        /// 后台利用HttpCookie设置Cookie,在前台通过document.cookie读取
        /// </summary>
        /// <returns></returns>
        [WebMethod]
        public static bool setCookie()
        {
            HttpCookie houtai = new HttpCookie("houtai"); 
            houtai.Value = "jackie";
            HttpContext.Current.Response.Cookies.Add(houtai);
            return true;
        }
    }
}
总结:(1) 红色部分为后台读取前台设置的cookie的方法.
         (2) 蓝色部分为前台读取后台设置的cookie的方法,如果后台设置多个cookie的话,前台通过document.cookie读取的就是全部的。

Js和asp.net各自设置的cookie相互读取的方法的更多相关文章

  1. 设置全局theme及读取theme方法

    在web.config中设置了默认的Theme,其部分如下的配置节点: <system.web> <pages theme="Default" controlRe ...

  2. js无法获取.net设置的cookie

    使用CookieHelper帮助类: public class CookieHelper { #region 获取Cookie /// <summary> /// 获得Cookie的值 / ...

  3. 运用JS设置cookie、读取cookie、删除cookie

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

  4. JS设置cookie、读取cookie、删除cookie

    JS设置cookie.读取cookie.删除cookie       JS设置cookie,注意一定要path=/ ,根目录,不然其他目录可能查询不到..默认是本目录. document.cookie ...

  5. JS设置cookie、读取cookie、删除cookie(转载)

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

  6. 运用JS设置cookie、读取cookie、删除cookiev

    JS设置cookie: 假设在A页面中要保存变量username的值("jack")到cookie中,key值为name,则相应的JS代码为: document.cookie=&q ...

  7. JS设置cookie、读取cookie、删除cookie(转)

    JS设置cookie.读取cookie.删除cookie 转载  2015-04-17   投稿:hebedich    我要评论 Js操作Cookie总结(设置,读取,删除),工作中经常会用到的哦! ...

  8. js自动记忆用户名(可以设置cookie多存几天)

    js自动记忆用户名(可以设置cookie多存几天) 一.总结 1.记住密码:因为cookie是存在本地的,也可以多存几天,所以记住密码的操作只需要读取cookie,将其中的账号密码直接显示在输入框就好 ...

  9. Asp.Net MVC 中的 Cookie(译)

    Asp.Net MVC 中的 Cookie(译) Cookie Cookie是请求服务器或访问Web页面时携带的一个小的文本信息. Cookie为Web应用程序中提供了一种存储特定用户信息的方法.Co ...

随机推荐

  1. Struts.xml讲解

    解决在断网环境下,配置文件无提示的问题我们可以看到Struts.xml在断网的情况下,前面有一个叹号,这时,我们按alt+/ 没有提示,这是因为” http://struts.apache.org/d ...

  2. 【js】将table的每个td的内容自动赋值给其title属性

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

  3. jquery取checkbox选中的值

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/ ...

  4. php获取网页内容方法总结

    抓取到的内容在通过正则表达式做一下过滤就得到了你想要的内容,至于如何用正则表达式过滤,在这里就不做介绍了,有兴趣的,以下就是几种常用的用php抓取网页中的内容的方法. 1.file_get_conte ...

  5. 【转】maven命令背后是如何工作的

    转载自:http://yinny.iteye.com/blog/1883488 Maven强大的一个重要的原因是它有一个十分完善的生命周期模型(lifecycle),它有三套相互独立的生命周期,请注意 ...

  6. Js数组里删除指定的元素(不是指定的位置)

    转载自:http://my.oschina.net/zh119893/blog/265964 之前一直是做后端的,从来也没有写过js,但是却一直想学学,也只是基于兴趣而已!现在到了这个公司,确实大量的 ...

  7. Timer&TimerTask原理分析

    转载地址,请珍惜作者的劳动成果,转载请注明出处:http://www.open-open.com/lib/view/open1337176725619.html 如果你使用Java语言进行开发,对于定 ...

  8. 一、HTML和CSS基础--HTML+CSS基础课程--第3部分

    第五章 CSS样式基本知识 内联式css样式,直接写在现有的HTML标签中
CSS样式可以写在哪些地方呢?从CSS 样式代码插入的形式来看基本可以分为以下3种:内联式.嵌入式和外部式三种. 内联式cs ...

  9. .net学习之集合、foreach原理、Hashtable、Path类、File类、Directory类、文件流FileStream类、压缩流GZipStream、拷贝大文件、序列化和反序列化

    1.集合(1)ArrayList内部存储数据的是一个object数组,创建这个类的对象的时候,这个对象里的数组的长度为0(2)调用Add方法加元素的时候,如果第一次增加元神,就会将数组的长度变为4往里 ...

  10. Duilib非官方更新贴~

    GitHub: https://github.com/movsb/duilib.git 2014-07-20: [76a04d1]    [BugFix] 修复无法解析类似<Control/&g ...