我公司在Cookie值中使用了许多包含'='和','的旧Cookie。一个例子是:A = v = 1& lg = en-US,it-IT,它& intl = it& np = 1; T = z = E.现在,我们无法摆脱这些cookie,我们需要Netty不会在验证这些cookie时抛出IllegalArgumentException。有什么建议吗?是否可以向CookieDecoder提交补丁,也可以在某些env变量中读取,这将相应地选择正确的正则表达式?
谢谢!
答案 0 :(得分:0)
Netty 3.5.1.Final解码你提到的cookie没有问题:
@Test
public void testDecodingValuesWithCommasAndEquals() {
String src = "A=v=1&lg=en-US,it-IT,it&intl=it&np=1;T=z=E";
Set<Cookie> cookies = new CookieDecoder().decode(src);
Iterator<Cookie> i = cookies.iterator();
Cookie c = i.next();
assertEquals("A", c.getName());
assertEquals("v=1&lg=en-US,it-IT,it&intl=it&np=1", c.getValue());
c = i.next();
assertEquals("T", c.getName());
assertEquals("z=E", c.getValue());
}