2015-07-03 12 views
7

Używam wss (zabezpieczone gniazda sieciowe) ze sprężyną z backendu i STOMP dla klienta javascript.Spring WebSocket: Uścisk dłoni nie powiódł się z powodu nieprawidłowego nagłówka aktualizacji: null

Czy ktoś wie dlaczego otrzymujemy:

Handshake failed due to invalid Upgrade header: null 
+0

można podać więcej szczegółów? wersja sprężynowa? twoja konfiguracja sieciowa? używasz sockjs? czy możesz skopiować/wkleić nagłówki żądań i odpowiedzi? –

Odpowiedz

2

Wreszcie znalazłem rozwiązanie.

Musiałem otworzyć port https w tomcat do obsługi żądań wss.

+10

Jak to zrobiłeś? Czy mógłbyś opublikować rozwiązanie? Dzięki! –

+0

HI, czy ktoś może rzucić światło na ten problem. Mam podobny problem, proszę poprowadzić, jak rozwiązać ten problem. – jellboi

9

Spotkałem ten sam problem z proxy nginx https do tomcat. To dlatego, że nie poparłem żądania wss. Do poparcia wniosku wss używam config jak poniżej:

# WebSocketSecure SSL Endpoint 
# 
# The proxy is also an SSL endpoint for WSS and HTTPS connections. 
# So the clients can use wss:// connections 
# (e.g. from pages served via HTTPS) which work better with broken 
# proxy servers, etc. 

server { 
    listen 443; 

    # host name to respond to 
    server_name ws.example.com; 

    # your SSL configuration 
    ssl on; 
    ssl_certificate /etc/ssl/localcerts/ws.example.com.bundle.crt; 
    ssl_certificate_key /etc/ssl/localcerts/ws.example.com.key; 

    location/{ 
     # switch off logging 
     access_log off; 

     # redirect all HTTP traffic to localhost:8080 
     proxy_pass http://localhost:8080; 
     proxy_set_header X-Real-IP $remote_addr; 
     proxy_set_header Host $host; 
     proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 

     # WebSocket support (nginx 1.4) 
     proxy_http_version 1.1; 
     proxy_set_header Upgrade $http_upgrade; 
     proxy_set_header Connection "upgrade"; 
    } 
} 
+0

Wygląda na to, że mam ten sam problem. Gdzie się znajduje ta konfiguracja? –

Powiązane problemy