Commit a3c7c285cd433b127d0902f250705df985d81120
1 parent
9ade224a
增加消息确认接口
Showing
2 changed files
with
15 additions
and
0 deletions
src/main/java/com/huaheng/pc/stompwebsocket/controller/WebSocketController.java
... | ... | @@ -3,9 +3,11 @@ package com.huaheng.pc.stompwebsocket.controller; |
3 | 3 | import com.huaheng.pc.stompwebsocket.WebsocketConstants; |
4 | 4 | import com.huaheng.pc.stompwebsocket.domain.StompPayload; |
5 | 5 | import com.huaheng.pc.stompwebsocket.service.StompWebSocketServiceImpl; |
6 | +import org.springframework.messaging.Message; | |
6 | 7 | import org.springframework.messaging.handler.annotation.MessageMapping; |
7 | 8 | import org.springframework.messaging.handler.annotation.SendTo; |
8 | 9 | import org.springframework.stereotype.Controller; |
10 | +import org.springframework.util.LinkedMultiValueMap; | |
9 | 11 | import org.springframework.web.bind.annotation.GetMapping; |
10 | 12 | import org.springframework.web.bind.annotation.PostMapping; |
11 | 13 | import org.springframework.web.bind.annotation.RequestBody; |
... | ... | @@ -42,6 +44,15 @@ public class WebSocketController { |
42 | 44 | } |
43 | 45 | |
44 | 46 | /** |
47 | + * 服务器接收confirm消息 | |
48 | + */ | |
49 | + @MessageMapping("/websocket/message/confirm") | |
50 | + public void handleConfirmMsgByWebsocket(Message headers){ | |
51 | + String msg_id = ((LinkedMultiValueMap<String, String>) headers.getHeaders().get("nativeHeaders")).get("msg-id").get(0); | |
52 | + stompWebSocketService.confirmMsg(msg_id); | |
53 | + } | |
54 | + | |
55 | + /** | |
45 | 56 | * 服务器接收httpget上行的普通文本消息,再通过websocket广播出去 |
46 | 57 | * http://127.0.0.1:8888/wms/websocket/message/string?msg=huaheng_robot |
47 | 58 | */ |
... | ... |
src/main/java/com/huaheng/pc/stompwebsocket/service/StompWebSocketServiceImpl.java
... | ... | @@ -76,6 +76,10 @@ public class StompWebSocketServiceImpl extends ServiceImpl<StompMessageMapper, S |
76 | 76 | messaging.convertAndSendToUser(user, topic, payload.getData(), headers); |
77 | 77 | } |
78 | 78 | |
79 | + public void confirmMsg(String msg_id){ | |
80 | + removeById(msg_id); | |
81 | + } | |
82 | + | |
79 | 83 | /** |
80 | 84 | * 将离线后的消息发送给用户 |
81 | 85 | * @param user |
... | ... |