ÎļþÃû´Ó src/main/kotlin/cn/flightfeather/supervision/socket/WebSocketMessageUtil.java ÐÞ¸Ä |
| | |
| | | import cn.flightfeather.supervision.common.utils.JsonUtil; |
| | | import org.springframework.util.StringUtils; |
| | | |
| | | import java.util.*; |
| | | |
| | | public class WebSocketMessageUtil { |
| | | public class WebSocketMessageDecoder { |
| | | private static final String START_STR = "##"; |
| | | private static final String SPLIT_STR = "&&"; |
| | | private static final String END_STR = "%%"; |
| | |
| | | */ |
| | | public static WebSocketMessage decodeMessage(String message) { |
| | | if (!verificationMessage(message)) { |
| | | return null; |
| | | // 忥ä¸ä¸ªä¸ä¼è¢«å¤ççæ¶æ¯ |
| | | return new WebSocketMessage(-1, ""); |
| | | } |
| | | WebSocketMessage webSocketMessage = new WebSocketMessage(); |
| | | String[] parts = message.substring(START_STR.length(), message.length() - END_STR.length()).split(SPLIT_STR); |
| | |
| | | * @return çæçæ¶æ¯å符串 |
| | | */ |
| | | public static String encodeMessage(WebSocketMessage webSocketMessage) { |
| | | return START_STR + webSocketMessage.getType() + SPLIT_STR + JsonUtil.INSTANCE.getGson().toJson(webSocketMessage.getContent()) + END_STR; |
| | | return START_STR + webSocketMessage.getType() + SPLIT_STR + JsonUtil.INSTANCE.getGson().toJson(webSocketMessage.getContent(), webSocketMessage.getContent().getClass()) + END_STR; |
| | | } |
| | | } |