2017-01-11 11 views
0

스프링 부트 웹 애플리케이션에서 SockJs 및 Stomp 클라이언트 측 및 Java 서버 측과 함께 websocket을 사용하려고합니다. 나는 npm sockjs-client와 stompjs를 설치했다. 내 클라이언트 측 코드는 다음과 같습니다.STOMPJS over 및 subscribe 메소드가 Spring, SockJs, npm, webpack과 함께 작동하지 않음

var SockJS = require('sockjs-client'); 
    var Stomp = require("stompjs");   
    var socket = new SockJS('/webSocketEndPoint'); 
      stompClient = Stomp.over(socket); 
      stompClient.connect({}, function (frame) { 
      stompClient.subscribe('/topic/notification', function (notificationBody) { 
      alert(JSON.parse(notificationBody.body).content); 
      }); 
     }) 

이상의 메소드가 작동하지 않아 빌드하려는 websocket이 작동하지 않습니다. IntelliJ는 나에게 "해결되지 않은 함수 또는 메소드"및 "해결되지 않은 함수 또는 메소드 구독"이라고 말합니다. 내 package.json stompjs 및 sockjs-client (올바른 버전)에 포함되었습니다. 처음에는 문제가되지 않지만이 스크립트를 실행할 수 없습니다. 누군가 나를 도울 수 있습니까?! 고마워요

답변

1

아마도 "stompjs"에 잘못된 따옴표가있을 수 있습니다. 내 작업 예제는 다음과 같습니다.

let SockJS = require('sockjs-client'); 
const Stomp = require('stompjs'); 

function register(registrations) { 
    let socket = SockJS('/webSocketEndPoint'); 
    let stompClient = Stomp.over(socket); 
    stompClient.connect({}, function(frame) { 
     registrations.forEach(function (registration) { 
      stompClient.subscribe('/topic/notification', function (notificationBody) { 
      alert(JSON.parse(notificationBody.body).content); 
      }); 
     }); 
    }); 
}