netty

    1熱度

    1回答

    我正在擴展ChannelInboundHandlerAdapter並且想要讀取確切的字節數。 public class Reader extends ChannelInboundHandlerAdapter{ @Override public void channelRead(ChannelHandlerContext ctx, Object msg){ Byte

    0熱度

    1回答

    對理解層有一些挑戰。 我有多個客戶端連接到服務器。 每個客戶端發送由'\r\n'終止的短數據報,但除非最終的DELIMITER到達(連接每個連接的塊),否則服務器處理不應啓動。 我是否延長DelimiterBasedFrameDecoder 我應該添加子管道和字符串連接在一起(這是比較容易)?但如何保留ChannelHandlerAdapter以前的塊? 澄清挑戰:我試圖避免必須維持狀態(以前的塊

    2熱度

    1回答

    我想用Netty實現Slack API客戶端。 Slack有幾十種方法,每種都有不同的URL和響應格式。 我應該爲每種方法創建一個通道並重用單個引導程序,還是應該爲所有通信使用單通道?實際上,我正在做這個項目來學習Netty,我無法理解文檔和示例中的策略(這很基礎)。 使用每個API方法的通道,我可以使用不同的處理程序來處理不同的數據類型,但是對於單通道,我無法做到這一點,是嗎? 我可以將頻道存儲

    0熱度

    1回答

    我的服務器向客戶端發送響應或將消息轉發給另一個客戶端取決於消息內容。 我需要使用8級字節的消息:括號之間6個加密字節,例如: 0x3C 0xE1 0xE2 0xE3 0xE04 0xE5 0xE6 0x3E 當裝置爲0x3C符號<作爲開口幀標記,和0x3E的裝置>符號作爲閉合幀標記。 如果內部6個加密字節(0×02 0xE1 0x03時0×04 0×05 0×06)被成功地解密,數據再次含有相

    0熱度

    1回答

    當使用Netty4解碼時,我得到異常。該消息的長度只有640,但是這個只讀的字節數是不夠的。 06-19 21:45:13.150 4192-4233/com.seewo.remote V/RemoteMassageDecoder: Decoder messageType == 1, messageLength: 640 06-19 21:45:13.152 4192-4233/com.seew

    1熱度

    1回答

    中間我有一些數字,包括HTTP請求緩衝區的CompositeByteBuf,我想在HTTP請求行之後注入額外的HTTP報頭字段。 (我不想使用整個HTTP編碼器/解碼器的東西,因爲我只是代理數據,不需要將它全部解析爲HTTP)。 我怎樣才能做到這一點使用衍生緩衝區,從而避免複製CompositeByteBuf的內容。我使用slice和readSlice所做的每一次嘗試都產生了indexoutofb

    0熱度

    1回答

    我想將我的FullHttpRequest對象轉換爲ByteBuf對象,以避免每次在流水線上寫入內容時都使用編碼。什麼是最好的方式來做到這一點?

    0熱度

    1回答

    我們一直在使用netty-handler 4.0.28.Final。我們有一個測試,我們將無效的xml寫入測試通道。如下所示,ctx.close()將被調用,channelInactive會觸發。 @Override public void exceptionCaught(ChannelHandlerContext ctx, Throwable exc) { if (connectio

    0熱度

    1回答

    我正在用Netty 4.1構建一個Http2服務器(並且服務器只需要支持Http2客戶端)。對於我最簡單的請求處理,我希望在執行任何業務邏輯之前獲得完整的Http2請求(即,FullHttpRequest)。 我該如何用Http2做到這一點? Netty的HttpObjectAggregator只能用於Http1。

    0熱度

    1回答

    我正在使用Netty的實時遊戲,我有一個關於使用上一個ChannelHandlerContext write方法從不同的線程比ChannelHandler是問題寫作。 我有一個單獨的Java應用程序池,我將從數據庫中提取並執行遊戲邏輯。我想使用BlockingQueue將請求提交給其他線程,以傳遞玩家發送的ChannelHandlerContext和數據。然後,該線程將根據該狀態對遊戲狀態進行更改