在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. AMD64与IA64的区别

    其实很多人从字面上,都以为AMD64就是针对AMD CPU的,IA64是针对INTEL CPU,其实是错的,我最初也是这样认为,其实不然: 你在市面上买的到的intel 64位 CPU都属于amd64 ...

  2. NYOJ 5 字符串处理 find()函数应用

    http://acm.nyist.net/JudgeOnline/problem.php?pid=5 #include<stdio.h> #include<iostream> ...

  3. HDOJ 1856

    #include<cstdio> #include<cstdlib> typedef struct ufse *ufset; struct ufse { ]; ]; }UFS; ...

  4. ldd查询命令或软件共享的函数库(动态)

    <1> ldd - print shared library dependencies SYNOPSIS ldd [OPTION]... FILE... DESCRIPTION ldd p ...

  5. 【Other】推荐点好听的钢琴曲

    2013-12-13 16:19 匿名 | 浏览 138977 次 音乐钢琴 推荐点好听的钢琴曲,纯音乐也可以thanks!!! 2013-12-14 19:34 网友采纳 热心网友 巴洛克:帕海贝尔 ...

  6. 编译 uImage

    编译 uImage 和测试 u-Boot - 小猪爱拱地 - 博客频道 - CSDN.NET http://blog.csdn.net/caspiansea/article/details/38057 ...

  7. 在SharePoint 2010 母版页里添加自定义用户控件

    在SharePoint 2010 母版页里添加自定义用户控件(译) 使用自定义用户控件的好处: 1.容易部署:2.易于控制显示或隐藏. (在使用的过程中)可能要面对的问题是:如何在用户控件里使用Sha ...

  8. HDU 5044(2014 ACM-ICPC上海网络赛)

    题意:给定一个树形图,节点10^5,有两种操作,一种是把某两点间路径(路径必定唯一)上所有点的权值增加一个固定值. 另一种也是相同操作,不同的是给边加权值.操作次数10^5.求操作过后,每个点和每条边 ...

  9. (原创)Python文件与文件系统系列(4)——文件描述字操作

    文件描述字(file descriptor,fd)是系统中用来唯一记录当前已经打开的文件的标识号,fd是一个整数. 除了file对象外,Python还提供对fd的操作,对fd的操作更加底层,fd和Py ...

  10. cocos2dx实现经典飞机大战

    游戏开始层 #ifndef __LayerGameStart_H__ #define __LayerGameStart_H__ #include "cocos2d.h" USING ...