有人可以指点我解析 Set-Cookie 标头的 Firefox 源代码吗?我想了解确切的行为。
如果您想知道原因,请进一步阅读?对于我的应用程序中的各种约束,我需要在单个 Set-Cookie 标头中传递多个 cookie。RFC-2109 明确提到,
"Set-Cookie 响应标头包含令牌 Set-Cookie:,后跟一个或多个 cookie 的逗号分隔列表。每个 cookie 以 NAME=VALUE 对开头,后跟零个或多个分号分隔的属性值对。”
所以我应该能够通过以下 Set-Cookie 标头
设置 Cookie:name1=value1;attr11=attrval11;attr12=attrval12,name2=value2; attr21=attrval21;attr22=attrval22;
它不起作用。但是,以下确实有效
设置 Cookie:name1=value1,name2=value2;attr1=attrval1;attr2=attrval2;
而且,我想为不同的 cookie 赋予不同的属性。
[更新]
真实例子:
示例#1-
设置 Cookie:cookie1=value1;路径=/,cookie2=value2; 路径=/
在这种情况下,Firefox 解析并从中获取第一个 cookie(其名称为“cookie1”,值为“value1”)(第二个被完全忽略)
示例#2-
设置Cookie:cookie1=value1,cookie2=value2;路径=/
在这种情况下,firefox 认为存在一个名为“cookie1”且值为“value1,cookie2=value2”的 cookie。这又不是本意。