Как прочитать заголовок HTTP из реализации сервера Netty SOCKS5?

В настоящее время я работаю над проектом, который использует реализацию Netty SOCKS5 для проксирования HTTP-запросов. Мне нужно перехватить и прочитать заголовки HTTP входящих запросов, чтобы применить некоторую пользовательскую логику.

Однако мне трудно понять, как извлечь заголовки HTTP из входящих запросов с помощью реализации Netty SOCKS5. Может ли кто-нибудь подсказать мне, как это сделать?

Вот код, с которым я работаю:

      ch.pipeline().addLast(
  ProxyChannelTrafficShapingHandler.PROXY_TRAFFIC,
  new ProxyChannelTrafficShapingHandler(3000, proxyFlowLog, channelListener)
);
//channel
ch.pipeline().addLast(new IdleStateHandler(3, 30, 0));
ch.pipeline().addLast(new ProxyIdleHandler());
//netty
if (logging) {
  ch.pipeline().addLast(new LoggingHandler());
}

//Socks5MessagByteBuf
ch.pipeline().addLast(Socks5ServerEncoder.DEFAULT);

//sock5 init
ch.pipeline().addLast(new Socks5InitialRequestDecoder());

//sock5 init
ch.pipeline().addLast(new Socks5InitialRequestHandler(ProxyServer.this));

if (isAuth()) {
  //socks auth
  ch.pipeline().addLast(new Socks5PasswordAuthRequestDecoder());
  //socks auth
  ch.pipeline().addLast(new Socks5PasswordAuthRequestHandler(getPasswordAuth()));
}

//socks connection
ch.pipeline().addLast(new Socks5CommandRequestDecoder());
//Socks connection

ch.pipeline().addLast(new Socks5CommandRequestHandler(ProxyServer.this.getBossGroup()));

Я был бы признателен за любую помощь или руководство по этому вопросу. Заранее спасибо!

0 ответов

Другие вопросы по тегам