我有一种情况,我想使用这两个子域 app.example.com ( ASP.NET )和 appapi.example的cookie。 com ( Web API )。我可以使用这样的API成功设置cookie:
dijit/Form/FilteringSelect
我正在使用 Postman ,我在Cookie标签下看到了这样的回复:
public HttpResponseMessage Get()
{
...
var result = jsonHelper.setHttpResponseMessage(obj);
List<CookieHeaderValue> cookies = new List<CookieHeaderValue>();
NameValueCollection values = new NameValueCollection();
values["Value1"] = value1;
values["Value2"] = value2;
values["Value3"] = value3;
CookieHeaderValue cookie = new CookieHeaderValue("MyCookie", values);
/*#if DEBUG
cookie.Domain = Request.RequestUri.Host;
#else*/
cookie.Domain = ".example.com"; //I made this based on the answers to the questions posted below
//#endif
cookie.Path = "/";
cookie.Expires = DateTime.Now.AddHours(1);
cookie.HttpOnly = true;
cookies.Add(cookie);
result.Headers.AddCookies(new CookieHeaderValue[] { cookie });
return result;
}
然后我使用Postman将cookie发送到 app.example.com/Page.aspx 。 Page.aspx Page_Load 中的代码如下所示:
Name Value
MyCookie Value1=2&Value2=test&Value3=val
这里我没有得到我想要的值,这意味着if (!IsPostBack)
{
if (Request.Cookies["MyCookie"] != null)
{
var myCookie = Request.Cookies["MyCookie"].Values;
var value1 = myCookie["Value1"];
var value2 = myCookie["Value2"];
}
...
是Request.Cookies["MyCookie"]
我知道上面已经实现的this question和this one,但它仍然没有解决我的问题。
基于此,我相信可以使用包含2个或更多子域的cookie,因此我需要知道如何正确实现它。
答案 0 :(得分:1)
https://www.getpostman.com/docs/postman/sending_api_requests/cookies
以上是如何在邮递员中添加cookie的官方文件