一款轻量级的微信消息处理框架,可以让业务代码与微信微信处理框架代码解耦,并且你根本不需要关心消息是如何发送的,你只需要关注你的业务即可.
Encapsula la recepción y el envío de mensajes de WeChat y puede utilizar el desarrollo basado en anotaciones para facilitar el desarrollo empresarial sin tener que prestar atención a los detalles de la recepción y el envío de mensajes.
La clase abstracta del procesador de mensajes está encapsulada internamente y proporciona funciones como filtrado de mensajes antes de procesar mensajes, registros de comportamiento predeterminados, etc. Los usuarios pueden heredar esta clase para implementar su propio negocio.
Simplemente agregue anotaciones para separar los procesadores de mensajes que procesan cada tipo. También admite la separación de procesadores de mensajes para diferentes tipos de eventos, evitando la necesidad de usar grandes secciones de if elseif elseif para determinar el tipo de mensajes en el código que maneja la lógica empresarial. . Las responsabilidades de cada interfaz son claras y la implementación está más desacoplada;
Cree un archivo de propiedades wechat.properties en la ruta raíz de classpath y configure wechat.appId, wechat.appsecret, wechat.token y wechat.encodingAESKey ( el nombre debe ser el mismo . El ejemplo es el siguiente):
Escriba una clase de procesador de mensajes, herede la clase abstracta AbstractMessageHandler , implemente el método doHandleMessage , agregue la anotación @MessageProcessor en la clase y especifique el tipo de mensaje que se procesará. El atributo messageType especifica el tipo de mensaje que se procesará y eventType especifica el. tipo de evento a procesar. Cuando el tipo de mensaje es un mensaje normal, no es necesario especificar el atributo eventType (incluso si se especifica, no será válido). El código de muestra es el siguiente:
@ Component
@ MessageProcessor ( messageType = MessageType . TEXT_MESSAGE )
public class TextMessageHandlerExample extends AbstractMessageHandler {
private static final Logger LOGGER = LoggerFactory . getLogger ( TextMessageHandlerExample . class );
public BaseResponseMessage doHandleMessage ( BaseRequestMessage requestMessage ) {
//在这里实现你自己的业务逻辑
TextRequestMessage textRequestMessage = ( TextRequestMessage ) baseRequestMessage ;
return MessageUtils . buildTextResponseMessage ( baseRequestMessage , textRequestMessage . getContent ());
}
}
@ Component
@ MessageProcessor ( messageType = MessageType . EVENT , eventType = EventType . EVENT_SUBSCRIBE )
public class SubscribeEventMessageHandlerExample extends AbstractMessageHandler {
private static final Logger LOGGER = LoggerFactory . getLogger ( SubscribeEventMessageHandlerExample . class );
@ Override
public BaseResponseMessage doHandleMessage ( BaseRequestMessage baseRequestMessage ) {
SubOrUnSubEventRequestMessage subOrUnSubEventRequestMessage = ( SubOrUnSubEventRequestMessage ) baseRequestMessage ;
//在这里实现你自己的业务逻辑
}
}
simplemente ejecuta tu aplicación!! diviértete...
Los enlaces de código de muestra para recibir y responder a varios tipos de mensajes son los siguientes para referencia de los lectores.
Tipos de mensajes básicos
Tipo de mensaje de evento
Correo electrónico: [email protected], errores y sugerencias son bienvenidos.
Currículum en línea: https://151376liujie.github.io/resume/