2017-03-28 386 views
0

스프링 웹 소켓의 특정 채널을 구독하려고하지만 SockJs을 사용하는 URL을 가리키는 동안 다음 오류가 발생합니다. WebSocket connection to 'ws://localhost:8080/Spring/rest/user/chat/045/jmfz3b3j/websocket' failed: Error during WebSocket handshake: Unexpected response code: 200이 문제를 피하십시오. 다음은 가입을위한 내 클라이언트 측 코드입니다.해결 방법 "실패 : WebSocket 핸드 셰이크 중 오류 : 예상치 못한 응답 코드 : 200"(봄용 웹 소켓)?

index.jsp를

var stompClient =null; 
 
     function subscribe(){ 
 
var socket = new SockJS('/Spring/rest/user/chat'); 
 
stompClient = Stomp.over(socket); 
 
stompClient.connect({}, function(frame) { 
 
    console.log('Connected: ' + frame); 
 
    stompClient.subscribe('/topic/messages', function(test) { 
 
     \t alert("in call back function");}); 
 
}); 
 
}

+0

클라이언트와의 서버 불일치의 끝점처럼 보입니다. 검토를 위해 서버 측 코드 스 니펫을 게시하십시오. – Kane

+0

@Kane 다음 스 니펫을 확인하십시오. –

답변

0

@Kane 이것은 spring-servlet.xml

<websocket:message-broker application-destination-prefix="/app" > 
    <websocket:stomp-endpoint path="/chat" allowed-origins="*"> 
     <websocket:sockjs /> 
    </websocket:stomp-endpoint> 
    <websocket:simple-broker prefix="/topic"/> 
</websocket:message-broker> 

내 웹 소켓 구성입니다 그리고 이것은 내 controller 코드

@Controller 
@RequestMapping("user") 
public class OptnCptController{ 
    @MessageMapping("topic/messages") 
    public String getMsg(String s) 
    { 
     return s; 
    } 
}