java-获取与Atmosphere @ManagedService消息关联的连接
作者:互联网
在this example中,是否有方法可以修改此方法
@org.atmosphere.config.service.Message(encoders = {JacksonEncoder.class}, decoders = {JacksonDecoder.class})
public Message onMessage(Message message) throws IOException {
logger.info("{} just send {}", message.getAuthor(), message.getMessage());
return message;
}
这样我就可以获得UUID(在连接时在AtmosphereResource中可用),以便我知道消息来自哪个连接?我尝试添加AtmosphereResource参数,但是它不起作用(没有收到消息).
解决方法:
实际上,可以将AtmosphereResource参数添加到onMessage.它必须是第一个参数. (我尝试将其添加为第二个参数,但它不起作用.)
因此,问题中的方法可以更改为:
@org.atmosphere.config.service.Message(encoders = {JacksonEncoder.class}, decoders = {JacksonDecoder.class})
public Message onMessage(AtmosphereResource r, Message message) throws IOException {
// TODO: Look up any info associated with the connection using r.uuid().
logger.info("{} just send {}", message.getAuthor(), message.getMessage());
return message;
}
标签:uuid,atmosphere,java 来源: https://codeday.me/bug/20191029/1960494.html