Używam socket.io z node.js na Heroku. Wszystko wydaje się działać. Jednak na pasku twórców Chrome otrzymuję Unexpected response code: 503
. Czy ktoś wie, co to może oznaczać? Czy powinienem się tym przejmować? Czy zajmie pamięć w przeglądarce? A jeśli tak, czy mogę go stłumić?"Nieoczekiwany kod odpowiedzi: 503" w przeglądarce Chrome. Być może ma to związek z socket.io na heroku?
Odpowiedz
Heroku "nie obsługuje" sieci Web na stosie cedrowym jeszcze (brak słowa, kiedy będą) Aktualizacja: patrz poniżej. They recommend dodając następujący kod do implementacji Socket.io:
// assuming io is the Socket.IO server object
io.configure(function() {
io.set("transports", ["xhr-polling"]);
io.set("polling duration", 10);
});
Powodem tego jest to, że Heroku dodaje warstwę routingu na górnej części hamowni. Twój kod zostanie wykonany na serwerze a, ale nie jest deterministyczny, który serwer będzie. W związku z tym WebSockets nie może wysyłać danych do "właściwego" serwera. Socket.IO przerzuci się na long-polling, który utrzymuje połączenie przy życiu poprzez warstwę routingu, zapewniając, że zdarzenia będą wykonywane na właściwym serwerze.
AKTUALIZACJA: Heroku WebSockets jest już w publicznej wersji beta! Możesz dodać obsługę WS do swojej aplikacji, wykonując heroku labs:enable websockets -a myapp
w swoim katalogu aplikacji.
Próbowałem użyć zaktualizowanej odpowiedzi. Jednak gdy to zrobię, nadal otrzymuję błąd 503. Używam domeny niestandardowej i skonfigurowałem serwer DNS do przekierowania na ws: // – Alexis
Tak jak w odpowiedzi, nadal jest to wersja beta. W tym momencie lepiej będzie skontaktować się z obsługą Heroku. – SomeKittens
Zdobycie 503 –
Dla osób pochodzących z google w 2016
Heroku WebSocket są teraz obsługiwane, nie ma potrzeby, aby je włączyć. WebSockets on Heroku
Upewnij się, aby sprawdzić dzienniki na Heroku. Zauważyłem błąd 503 w chrome i po sprawdzeniu logów okazało się, że moja aplikacja Heroku się zawiesiła. Wystąpił błąd w moim kodzie, który spowodował, że nie odpowiadał (w ogóle nie dotyczy socket.io)
Naprawiono kod i 503 odszedł!
Co zrobiłeś, aby naprawić kod? Aplikacja mojego węzła znajduje się na cedrze Heroku-14. Nadal otrzymuję "nieoczekiwany kod odpowiedzi: 503" podczas wywoływania 'var ws = new WebSocket ('ws: //myapp.herokuapp.com');'. – MobileDream
Czym dokładnie jest twój błąd i jak to naprawiłeś? – Jhn
- 1. Nieoczekiwany kod odpowiedzi: 502 Błąd podczas korzystania socket.io z AppFog
- 2. Socket.io na Heroku: kod po stronie klienta
- 3. Websocket nie działa z socket.io w heroku
- 4. Uścisk dłoni WebSocket: nieoczekiwany kod odpowiedzi: 404
- 5. Połączenie z WebSocket na "wss: //" nie powiodło się: nieoczekiwany kod odpowiedzi: 500
- 6. RoR 5.0.0 ActionCable wss Uzgadnianie WebSocket: Nieoczekiwany kod odpowiedzi: 301
- 7. Kciuk suwaka zakresu danych nie może być przenoszony w przeglądarce Google Chrome
- 8. Błąd na płótnie w przeglądarce Chrome
- 9. Błąd podczas websocket uzgadniania: Nieoczekiwany kod odpowiedzi: 403
- 10. Serwer Shiny & RStudio: "Błąd podczas uzgadniania WebSocket: nieoczekiwany kod odpowiedzi: 404"
- 11. Przykładowy błąd Heroku socket.io w Express 4.0
- 12. ksoap2 Android nieoczekiwany typ w odpowiedzi
- 13. Jak zmienić kod odpowiedzi http na obiekcie w Amazon S3
- 14. Błąd H13 (połączenie zamknięte bez odpowiedzi) Heroku
- 15. Czy to może być rekurencyjne w Prologu?
- 16. Trace na konsoli Chrome/przeglądarce
- 17. Status uchwytu (np. 503) w odpowiedzi opcji Axios OPCJE
- 18. Dlaczego w przeglądarce Chrome 30 nie działa kod MutationObserver?
- 19. Socket.io nie wysyła wiadomości do serwera węzłów w przeglądarce Chrome i Firefox
- 20. Nieoczekiwany margines 1 piksela w przeglądarce krawędzi
- 21. jak zmienić nagłówek odpowiedzi w Chrome
- 22. 503 Usługa niedostępna, ale logi heroku pokazują 200
- 23. Błąd animacji w przeglądarce Chrome v.36?
- 24. ActionCable na AWS: Błąd podczas websocket uzgadniania: Nieoczekiwany kod odpowiedzi: 404
- 25. Ile rdzeni procesora ma heroku?
- 26. Czcionka internetowa w przeglądarce Chrome
- 27. Modyfikowanie nagłówków odpowiedzi HTTP w przeglądarce Firefox
- 28. Co oznacza glif w przeglądarce Chrome?
- 29. Kolejny przypadek, w którym spacja ma znaczenie (być może?)
- 30. Twitter OAUTH - zwraca kod odpowiedzi "0"
Możesz znaleźć kod błędu tutaj: https://devcenter.heroku.com/articles/error-codes może ci to pomoże. –
Czy używasz websockets? Ponieważ nie możesz na Heroku. Więcej informacji tutaj: https://devcenter.heroku.com/articles/using-socket-io-with-node-js-on-on-onoku –