Использую netty. Имеется такой код.
import io.netty.channel.ChannelInitializer;
import io.netty.channel.ChannelPipeline;
import io.netty.channel.socket.SocketChannel;
public class ServerAdapterInitializer extends ChannelInitializer<SocketChannel> {
@Override
protected void initChannel(SocketChannel channel) throws Exception {
ChannelPipeline pipeline = channel.pipeline();
pipeline.addLast("encoder", new Encoder());//Кодирует
pipeline.addLast("decoder", new Decoder());//Расшифровывает
pipeline.addLast("handler", new ServerAdapterHandler());// ServerAdapterHandler() будет принимать все пакеты от клиентов.
}
}
(см. https://hastebin.com/fatubasugo.scala)
Создал свои 2 класса. Encoder и Decoder.
Они оба одинаковы:
import com.sun.xml.internal.ws.api.message.Packet;
import io.netty.buffer.ByteBuf;
import io.netty.channel.ChannelHandlerContext;
import io.netty.handler.codec.MessageToByteEncoder;
public class Encoder extends MessageToByteEncoder<Packet> {
@Override
protected void encode(ChannelHandlerContext channelHandlerContext, Packet packet, ByteBuf byteBuf) throws Exception {
}
}
(см. https://hastebin.com/pajirogawu.scala)
Проблема в том что я не понимаю как я могу закодировать и раскодировать пакет который получу от клиента или сервера.
Смотрел стрингой кодер декодер но мало чего понял. Разьясните мне пожалуйста =) как правильно кодировать и разкодировать пакеты принятые клиентом или сервером.
Скиньте пару сайтиков где на русском написаны простейшие примеры.
Современные инструменты для криптотрейдинга: как технологии помогают принимать решения
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости