0 0

netty中长字符串被截断。0

我的netty服务器接受的是http请求,代码如下

 

public void channelRead(ChannelHandlerContext ctx, Object msg)
			throws Exception {
		StringBuffer sb = new StringBuffer();
		if (msg instanceof HttpRequest) {
		}
		if (msg instanceof HttpContent) {
			HttpContent httpContent = (HttpContent) msg;
			ByteBuf content = httpContent.content();
			
			while (content.isReadable()) {
				sb.append((char) content.readByte());
			}
			content.release();
                        System.out.println(sb.toString());
		}
	}

 

如果请求过来的字符串过长,就会被切割成两段。

 

针对这种问题,有什么好的处理办法?

2014年10月13日 14:28

1个答案 按时间排序 按投票排序

0 0

可以将http消息分包,过长的话可以拆成2段或更多,然后在握手的时候进行判断和组装。

2014年10月14日 10:49

相关推荐

    netty接收串口数据代码,测试串口工具

    java netty接收串口数据 开启windows串口工具 发送串口数据调试助手

    JAVA netty 获取串口数据并且下发数据

    当接收到数据时,`channelRead`方法会被调用,我们可以在这里解析传感器发送的数据,并根据需要进行处理。同样,当我们需要发送命令到串口时,可以调用`ctx.writeAndFlush(data)`,这里的`ctx`是`...

    netty案例,netty4.1基础入门篇三《NettyServer字符串解码器》源码

    netty案例,netty4.1基础入门篇三《NettyServer字符串解码器》源码 https://mp.weixin.qq.com/s?__biz=MzIxMDAwMDAxMw==&mid=2650724760&idx=1&sn=4e5faf45de87e2c7346e9053628b51b0&scene=19#wechat_redirect

    Netty使用JSerialComm进行串口读取的更新库源代码及问题修正

    Netty-Transport-jSerialComm升级版本(v2.0.0) 更新如下: 1)依赖的Netty从 4.1.13.Final版本升级到 4.1.82.Final版本 2)依赖的jSerialComm 从1.3.11版本升级到2.9.2版本 3)处理两个问题: 第一个问题是:...

    物联网通讯协议,基于netty框架,支持COM(串口)和TCP协议,同时支持设备组多台设备高并发通讯

    物联网通讯协议,基于netty框架,支持COM(串口)和TCP协议,同时支持设备组多台设备高并发通讯。设计上采用工厂设计模式,代码采用继承和重写的方式实现高度封装,可作为SDK提供封装的接口,让具体的业务开发人员...

    netty服务器解析16进制数据

    这些处理器可以被添加到Netty的管道(`ChannelPipeline`)中,以便在数据传输时自动应用。 6. **LIQUIDSOCKETSERVER 示例** 压缩包中的 "LIQUIDSOCKETSERVER" 文件可能是Netty服务器的源代码示例,它可能展示了...

    Netty进制转换乱码问题

    在本文中,我们将深入探讨Netty中的进制转换和字符编码,并提供解决方案。 首先,我们要明白Netty作为一个高性能的网络应用框架,它本身并不直接处理字符编码,而是通过ByteBuf对象来存储和传输字节流。ByteBuf是...

    netty案例.zip

    它重写了channelRead方法,当有数据从客户端读取时,会打印出客户端地址并处理"hello netty"字符串。 3. **ByteBuf**: Netty的ByteBuf是Java NIO ByteBuffer的替代品,提供了更高效和灵活的字节操作。在这个例子...

    netty案例,netty4.1基础入门篇五《NettyServer字符串编码器》源码

    netty案例,netty4.1基础入门篇五《NettyServer字符串编码器》源码 https://mp.weixin.qq.com/s?__biz=MzIxMDAwMDAxMw==&mid=2650724771&idx=1&sn=8f70169b9f329a8cad0071a28f27a65a&scene=19#wechat_redirect

    基于netty和RXTXCom.jar实现的串口通信master端和slave端

    0、maven项目 1、需要手动加入依赖RXTXcomm.jar 2、将rxtxParallel.dll,rxtxSerial.dll放到<JAVA_HOME>\jre\bin下 3、运行App.java主程序

    netty encode decode

    在这个"Netty encode decode"主题中,我们主要关注两个关键部分:AMF3(Action Message Format 3)编码和解码,以及字符串的编码和解码。 AMF3 是 Adobe 开发的一种二进制序列化格式,常用于 Flash 和 Flex 应用...

    Netty实现Java服务端和C#客户端联通

    标题中的“Netty实现Java服务端和C#客户端联通”是指使用Netty作为Java服务器框架,与C#客户端(使用DotNetty库)进行通信的一种技术实现。这涉及到跨平台的网络通信,以及两个不同编程语言间的交互。 Netty是Java...

    JSerialComm进行串口读取的更新库源代码(Netty-Transport-jSerialComm-master2.0)

    基于Netty使用JSerialComm进行串口读取的更新库源代码(Netty-Transport-jSerialComm-master2.0.0),1)依赖的Netty从 4.1.13.Final版本升级到 4.1.82.Final版本2)依赖的jSerialComm 从1.3.11版本升级到2.9.2版本3...

    基于Netty框架开发的Modbus源代码。

    基于Netty框架开发的Modbus源代码。支持 * READ COILS | 0x01 * READ DISCRETE INPUTS | 0x02 * READ HOLDING REGISTERS | 0x03 * READ INPUT REGISTERS | 0x04 * WRITE SINGLE COIL | 0x05 * WRITE SINGLE REGISTER...

    netty实现的聊天代码

    Netty 提供了多种编解码器,如 `StringDecoder` 和 `StringEncoder`,可以方便地将字符串数据转换成 ByteBuf(Netty 的字节缓冲区),反之亦然。在本示例中,可能已经使用了这些编解码器来处理消息。 为了实现实时...

    netty socketio 在线聊天程序

    当WebSocket不被支持时,它会自动降级到其他协议,如polling或long-polling。在聊天应用中,Socket.IO通过建立持久连接,允许用户实时发送和接收消息,无论他们是在网页还是小程序环境中。 3. **在线聊天程序**: ...

    netty websocket通讯接收数据不完整问题

    这是一个java web项目集成了netty websocket的完整代码。java web项目作为服务器端和客户端进行数据通信。但是常常存在提示Max frame length of 65536 has been exceeded问题。初始化握手对象时指定了...

    Netty实战.epub_netty实战epub_netty实战epub_netty_

    《Netty实战》这本书是针对Java网络编程框架Netty的一本深入实践教程,旨在帮助读者掌握Netty的核心特性和实际应用。Netty是一款高性能、异步事件驱动的网络应用程序框架,广泛应用于各种分布式系统、微服务架构以及...

    Netty基础,用于学习Netty,参考黑马程序员的netty教程

    Netty基础,用于学习Netty,参考黑马程序员的netty教程

    Netty入门教程文档

    这一类错误产生的原因是业务系统不够健全,在接收输入后没有进行判断直接写入后台数据库造成的,比如数值数据输成全角数字字符、字符串数据后面有一个回车操作、日期格式不正确、日期越界等。这一类数据也要分类,...

Global site tag (gtag.js) - Google Analytics