ASP.NET Mvc Api:设置cookie然后302/303 Redirect丢失cookie

前端之家收集整理的这篇文章主要介绍了ASP.NET Mvc Api:设置cookie然后302/303 Redirect丢失cookie前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个API动作,返回一个HttpResponseMessage.
API地址如下: http://localhost/login?authcode=xxx

API操作执行一些登录身份验证,并将用户重定向注册表或欢迎页面.代码如下:

var response = new HttpResponseMessage();
var cookie = new CookieHeaderValue("token","ThisIsTheTokenNeeded");
response.Headers.AddCookies(new CookieHeaderValue[] { cookie });
response.StatusCode = HttpStatusCode.Found;
response.Headers.Location = new Uri("http://localhost/welcome.html");
return response;

在welcome.html中,我使用“document.write(document.cookie)”并且看不到名为“token”的cookie.一些如何迷失.谁能告诉我如何完成这项工作或者这个架构毕竟不正确?

解决方法

我找到了答案.范围未设置.在我的原始代码中缺少以下行.
cookie.Path = "/";

由于重定向到另一个页面,即使在同一个域下,该cookie在不同页面上也无效.如果未设置路径,则Cookie仅对定位为http://localhost/login?authcode=xxx的原始请求有效

今天我了解到我需要仔细检查cookie的域名和路径属性,然后再声称有人吃了它.

原文链接:https://www.f2er.com/aspnet/245467.html

猜你在找的asp.Net相关文章