如何使用C#在webapi中读取多个同名的cookie

PAN*_*KAJ 5 .net c# httpcookie c#-4.0 asp.net-web-api

我们创建了两个具有相同名称的 cookie。当我迭代循环时,我总是得到第一个 cookie。有没有办法分别访问这两个cookie?

        if (Request.Cookies.AllKeys.Where(x => x == "test").Count() > 1)
        {
            foreach (var cookie in Request.Cookies.AllKeys)
            {
                if (Request.Cookies[cookie].Name == "test")
                {
                    var temp = System.Web.HttpContext.Current.Request.Cookies["test"];
                    temp.Expires = DateTime.Now.AddDays(-1);
                    Response.Cookies.Add(temp);
                }
            }               
        };
Run Code Online (Sandbox Code Playgroud)

小智 0

我们不能在特定域中拥有两个具有相同名称的 cookie,并且默认情况下我们从当前域获取 cookie。所以我没有看到您可以在上述代码中获得两个具有相同名称的 cookie 的情况。

请更详细地提及您的问题。

  • 您的域中有一个 cookie,并且您的子域中有一个同名的 cookie。它们都出现在请求中,但具有不同的域。您会阅读更严格的内容,但某些情况下您可能需要访问另一种。 (2认同)