jQuery cookie插件创建相同的cookie而不是读取它

时间:2013-08-18 22:12:06

标签: c# jquery asp.net-mvc httpcookie jquery-cookie

我有这个:

// connect to MemberHub
function connect() {

    // get unique id cookie
    var uid = $.cookie('UniqueID', { path: '/' });

    member.server.connect(uid).done(function (result) {
        if (result.msg == 'success') {
            // notify user  
            $('#log').append($('<li>', { html: 'Connected to MemberHUB' }));
        }
    });
}

每次我尝试读取cookie时,都会创建相同的cookie而不是读取它。

更新:以下是我分配Cookie的方式:

    public static HttpCookie Create(string name, string value, 
        DateTime expires, HttpContextBase httpContext)
    {
        var cookie = new HttpCookie(name)
        {
            Value = value,
            Expires = expires,
            Secure = true,
            HttpOnly = false,
            Path = "/"
        };

        httpContext.Response.Cookies.Add(cookie);
        return cookie;
    }

任何建议都会有所帮助。

1 个答案:

答案 0 :(得分:1)

如果没有其他参数(但cookie的名称)提供给方法 [参见the source]

,则

$.cookie仅为读取权限

如果您有兴趣阅读它,只需提供$.cookie('UniqueID')并删除第二个参数。

作为一个FYI,path(以及其他cookie属性)仅在分配值时才相关,而不是检索。换句话说,您不需要提供path:'/'来获取应用于该路径的Cookie,document.cookie应该本机执行该检查。