我希望我的Ajax代码通过Netty连接服务器。为此,我需要在服务器端Netty处理程序中使用JSON解码器和编码器。
是否有任何开箱即用的实现,或者我应该自己编写?
谢谢,
吉尔
答案 0 :(得分:4)
据我所知,没有内置的JSON解码器/编码器,但这并不意味着你必须从基本的HTTP处理程序开始。
1)在服务器管道中有HttpRequestDecoder,HttpResponseEncoder。
2)然后实现HttpContentDecoder,HttpContentEncoder用于JSON解码的抽象类&编码,这里你必须通过为JSON提供OneToOneEncoder / Decoder实现来实现newContentDecoder,newContentEncoder方法。
您可以使用Google Gson编写OneToOneEncoder / Decoder实现。
然后在管道中添加HttpContentDecoder,HttpContentEncoder实现。
有关更多详细信息,您可以查看HttpContentDecompressor,HttpContentCompressor源代码。