我在这样的一个mvc控制器中将值设置为Cookie
HttpCookie accessToken = new HttpCookie("AccessToken");
accessToken.Values["accessToken"] = "cb7ca44ff81324186724867668572a8f";
Response.SetCookie(accessToken);
当我从像这样的另一个控制器中获取cookie的价值时
HttpContext.Request.Cookies.Get("AccessToken");
或者像这样
Request.Cookies["AccessToken"].Value
我得到了
的accessToken = cb7ca44ff81324186724867668572a8f
我只想在没有钥匙的情况下获得价值,我做错了什么?
答案 0 :(得分:1)
您正在为AccessToken cookie添加键值对。如果只存储一个值而不需要类似字典的结构,则可以使用HttpCookie.Value
属性。
accessToken.Value = "cb7ca44ff81324186724867668572a8f";
Request.Cookies["AccessToken"].Value // output 'cb7ca44ff81324186724867668572a8f'
更新:如果您想像最初那样存储多个键值对,那么:
var accessToken = new HttpCookie("AccessToken");
accessToken["somekey1"] = somevalue1;
accessToken["somekey2"] = somevalue2;
// read values
string somevalue1 = Request.Cookies["AccessToken"]["somekey1"];
string somevalue2 = Request.Cookies["AccessToken"]["somekey2"];