0

私の会社では、Cookieの値に「=」と「、」を含む多くのレガシーCookieを使用しています。例は次のようになります:A = v = 1&lg = en-US、it-IT、it&intl = it&np = 1; T = z=E。現在、これらのCookieを削除することはできません。また、Nettyは、これらのCookieの検証時にIllegalArgumentExceptionをスローしないようにする必要があります。何か提案はありますか?パッチをCookieDecoderに送信しても大丈夫でしょうか。おそらく、適切な正規表現を選択するenv変数を読み込んでください。

ありがとう!

4

1 に答える 1

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());
}
于 2012-06-27T03:40:06.213 に答える