나는 0으로 끝나는 엔티티로 구성된 HTTP 응답을 가지고있다.NOOB : HttpClientCodec에 DelimiterBasedFrameDecoder 묶기
나는 0- 끝나는 엔티티를 개별적으로 처리하기를 원한다. 그렇게하는 명백한 방법은 DelimiterBasedFrameDecoder에 연결하는 것처럼 보인다.
그러나 HttpClientCodec 다음에 메시지는 HttpResponse 또는 HttpChunk이고 DelimiterBasedFrameDecoder (물론 모든 FrameDecoder)는 원시 ChannelBuffer에서 작동하려고합니다.
그래서 나는 함께 해킹 할 수 있다고 확신하지만, 이것을 수행하는 '올바른'방법을 알고 싶습니다. '권리'는 우아하고 정확하며 Netty의 '정신'으로 다양하게 정의 될 수 있습니다.
사과가 너무 순진한 경우 사과드립니다. 응용 프로그램이 직접 자신의 와이어/프레임 형식으로 TCP/UDP를 사용하는 경우
롤랜드
감사! HTTP 서버에 대한 디코딩 파이프 라인을 제시했다고 생각하십니까? 내 애플 리케이션은 chunked 응답을받는 HTTP 클라이언트입니다. 그리고 내가 도착할 때 청크를 처리하려고합니다. 전체 메시지가 완료 될 때까지 HttpChunkAggregator가 멈 춥니 다. '간단한 업스트림 처리기를 사용하여 디코딩하는 것을 선호합니다 ...'에 대해 조금 더 자세히 설명해 주시겠습니까? –
예, 정확합니다 :), 업데이트했습니다. HttpChunkAggregator는 마지막 청크가 수신 될 때까지 대기 한 다음 전체 HttpResponse로 메시지 이벤트를 시작합니다. 간단한 업스트림 처리기를 사용한다는 것은 파이프 라인의 마지막 두 핸들러를 대체하는 간단한 업스트림 처리기 구현을 할 수 있다는 것입니다. –