我使用标准的auth进程进行ASP.NET MVC5项目。
致电/Account/Login
后,我通过身份验证令牌获得了新Cookie .AspNet.ApplicationCookie
的回复。问题是如何在登录操作中获取此令牌,在生成后立即?
我唯一的想法是尝试从响应的cookie中获取它,但它不起作用:
// ... somwhere in login action
AuthenticationManager.SignIn(identity);
// <-- How to obtain auth token here? Code below don't work
var token = HttpContext.Current.GetOwinContext().Response.Cookies[".AspNet.ApplicationCookie"];
..但这甚至没有编译。
答案 0 :(得分:0)
Request.Cookies[".AspNet.ApplicationCookie"]
不确定是否有领先期“。”虽然,也尝试:
Request.Cookies["AspNet.ApplicationCookie"]
答案 1 :(得分:0)
在OAuth的回调操作中,您可以使用Request.Cookies [&#34; .AspNet.ExternalCookie&#34;]
答案 2 :(得分:-1)
我相信您可能会混淆请求和响应。响应是您发送给客户端的 - 所以您永远不想从那里读取cookie。而是从Request对象中读取cookie。
如果你从Response对象中“读取”并且cookie中“已经存在”,那么它只会创建一个具有该名称的新cookie - 没有任何价值!