1
チャネル登録時にパケットを送信する際に問題が発生しました(クライアント - >サーバ)。 さらに、登録後にパケットを送信すると、パケットを送信することが許可されます。 逆の方法(サーバー - >クライアント)は全く問題なく動作します。 登録機能:Netty - 登録時にチャネルに書き込めません(channelRegisteredイベント)
@Override
public void channelRegistered(ChannelHandlerContext ctx) throws Exception {
ctx.channel().write(new byte[] {0x00});
}
また、フィルタチェーンダウンエンコーダに遭遇:
public class Encoder extends MessageToByteEncoder<byte[]>{
@Override
protected void encode(ChannelHandlerContext ctx, byte[] b, ByteBuf bb) throws Exception {
byte[] data = b.getData();
bb.writeInt(data.length);
bb.writeBytes(data);
}
}
サーバーは、したがって、上記のパケットを受信しない - その結果として、 は私がchannelReadイベントかどうかを確認するためにデバッグそれはしなかった。 (デコードクラスでデータをデコードしませんでした)
前提条件はありますか?
私は、APIの説明を急いで読んではいけないと思います。私に教えてくれてありがとう。 – user3385390