首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >websocket失败: WebSocket握手期间出错:意外响应代码: 400

websocket失败: WebSocket握手期间出错:意外响应代码: 400
EN

Stack Overflow用户
提问于 2016-02-15 01:32:34
回答 1查看 2.4K关注 0票数 0

我使用的是ec2,spring websocket使用socksJS在本地运行良好。我已经尝试过下面的东西了。1.我没有阻止TCP的负载均衡器。请求直接发往ec2服务器2。用真实IP代替ec2服务器名。

虽然服务器在chrome控制台中给出了以下问题,但应用服务器日志中没有错误

代码语言:javascript
复制
WebSocket connection to 'ws://ec2-XX-X-XXX-XXX.compute-1.amazonaws.com/ws/963/kaidmvd9/websocket' failed: Error during WebSocket handshake: Unexpected response code: 400

Javascript

代码语言:javascript
复制
app.service('SocketService', function(httpService,$rootScope,SoundService) {
this.registerMe = function(callback){
    $rootScope.socket = new SockJS("/ws");
    $rootScope.stompClient = Stomp.over($rootScope.socket);
    $rootScope.stompClient.connect('guest', 'guest', function(frame1) {
        $rootScope.stompClient.subscribe('/user/'+$rootScope.loggedInUser.username+'/reply', function(frame2) {
            var msg = JSON.parse(frame2.body);
            console.log(msg);
        });
    }, 
    function(error) {
        console.log(error.headers.message);
    }
    );});

Spring xml

代码语言:javascript
复制
<websocket:message-broker application-destination-prefix="/app" >
    <websocket:stomp-endpoint path="/ws">
        <websocket:sockjs />
    </websocket:stomp-endpoint>
    <websocket:simple-broker prefix="/topic,/user" />
</websocket:message-broker>
EN

回答 1

Stack Overflow用户

发布于 2016-03-03 01:07:13

这是通过你的T-Hub帖子得出的,不要有足够的声誉来添加评论,否则会这样做的。下面是您可以尝试的方法:使用EC2的私有ip (使用ifconfig查找)来托管WebSocket端点。

代码语言:javascript
复制
<websocket:message-broker application-destination-prefix="/app">
    <websocket:stomp-endpoint path="/ws">
      <websocket:sockjs/>
    </websocket:stomp-endpoint>
     <websocket:stomp-broker-relay prefix="/topic,/user"
           relay-host="your-ec2-private-ip-addr" relay-port="80" heartbeat-send-interval="20000" heartbeat-receive-interval="20000"/>
</websocket:message-broker>

获得帮助的来源:Java Spring STOMP: Set broker IP

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35394849

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档