1

我正在努力学习netty。我创建了一个重定向 ulr 的小型服务器应用程序。服务器代码:`

if (urlDecoder.path().equals("/redirect")) {
    FullHttpResponse response = new DefaultFullHttpResponse(HTTP_1_1, MOVED_PERMANENTLY);
    response.headers().set(LOCATION, urlDecoder.parameters().get("url").get(0));
    response.headers().set(CONTENT_LENGTH, response.content().readableBytes());

    if (!keepAlive) {
        ctx.write(response).addListener(ChannelFutureListener.CLOSE);
    } else {
        response.headers().set(CONNECTION, Values.KEEP_ALIVE);
        ctx.write(response);
    }
}

它有效,但昨天我想升级它并添加一些这样的代码

String redirectionUrl = urlDecoder.parameters().get("url").get(0);

if (!redirectStatistics.containsKey(redirectionUrl)) {
    redirectStatistics.put(redirectionUrl, 1);
} else {
    int tempValue = redirectStatistics.get(redirectionUrl).intValue();
    redirectStatistics.put(redirectionUrl, tempValue++);
}

然后它被打破了。请帮助了解发生了什么。

4

0 回答 0