केवल विशिष्ट उपयोगकर्ता के लिए सर्वर से वेबसैट संदेश कैसे भेजें?
मेरे वेबएप में स्प्रिंग सिक्योरिटी सेटअप है और वेबसोकेट का उपयोग करता है। मैं मुश्किल समस्या का सामना कर रहा हूँ सर्वर से विशिष्ट उपयोगकर्ता के लिए संदेश भेजने की कोशिश कर रहा है ।
मैनुअल पढ़ने से मेरी समझ उस सर्वर से है जिसे हम कर सकते हैं
simpMessagingTemplate.convertAndSend("/user/{username}/reply", reply);
और ग्राहक पक्ष पर:
stompClient.subscribe('/user/reply', handler);
लेकिन मुझे कभी भी सब्सक्रिप्शन कॉलबैक नहीं मिला। मैंने कई अलग-अलग रास्ते आजमाए लेकिन कोई किस्मत नहीं।
अगर मैं इसे / विषय / उत्तर पर भेजता हूं तो यह काम करता है लेकिन अन्य सभी जुड़े हुए उपयोगकर्ता इसे प्राप्त करेंगे।
समस्या को समझने के लिए मैंने इस छोटे से प्रोजेक्ट को github पर बनाया है: https://github.com/gerrytan/wsproblem
प्रजनन करने कि प्रक्रिया:
1) क्लोन और प्रोजेक्ट का निर्माण (सुनिश्चित करें कि आप jdk 1.7 और मावेन 3.1 का उपयोग कर रहे हैं)
$ git clone https://github.com/gerrytan/wsproblem.git
$ cd wsproblem
$ mvn jetty:run
2) नेविगेट करें http://localhost:8080
, या तो बॉब / टेस्ट या jim / test का उपयोग करके लॉगिन करें
3) "अनुरोध उपयोगकर्ता विशिष्ट संदेश" पर क्लिक करें। अपेक्षित: केवल इस उपयोगकर्ता के लिए "प्राप्त संदेश केवल मेरे लिए" के बगल में एक संदेश "हैलो {उपयोगकर्ता नाम}" प्रदर्शित होता है, वास्तविक: कुछ भी प्राप्त नहीं होता है