2011-11-10 29 views
9

Mam problemy z załadowaniem biblioteki socket.io dla mojego kodu klienta JS w aplikacji Node.js hostowanej na Heroku.Socket.io na Heroku: kod po stronie klienta

Na razie mam ten wiersz na końcu mojego pliku index.html:

<script type="text/javascript" src="/socket.io/socket.io.js"></script> 

Ale wtedy, gdy robię socket = io.connect('http://myherokuapp'); w moim kodu JS klienta, pojawia się oczekiwany „IO nie jest zdefiniowana "błąd.

Każdy pomysł, jak poprawnie załadować bibliotekę na Heroku?

Dzięki!

+0

ok, więc w końcu próbowałem przepchnąć bibliotekę po stronie klienta "ręcznie" z resztą mojej aplikacji. Wydaje się działać, ale teraz uruchamiam nowy problem podczas inicjowania pliku socket.io.js: http: //myherokuapp/socket.io/1/? T = 1320939716103 & jsonp = 0 jest w pewnym momencie wywoływana i zwraca 404 bez obiektu uznany. – Johanisma

Odpowiedz

8

Ok, więc w końcu znalazłem drogę. Dzielę się na wypadek, gdyby ktoś pomógł.

załadować skrypt w index.html ten sposób:

<script type="text/javascript" src="http://myapp.herokuapp.com/socket.io/socket.io.js"></script> 

Ma to sens, ponieważ biblioteki po stronie klienta jest właściwie załadowany z serwera węzła i nie powinno być popychany ręcznie.

W moim pliku JS po stronie klienta, I instancji gniazda w ten sposób:

socket = io.connect('http://myapp.herokuapp.com/'); 

Również i ta wykracza poza zakres tego pytania, ale nie można używać websocket na Heroku teraz. Mają małą uwagę na temat tego here.

Mam nadzieję, że to pomoże!

+0

Po zmianie kodu na to, czy Twoja aplikacja działa na serwerze Heroku? Mam również do czynienia z tym samym problemem i nie rozwiązałem go jeszcze. Otrzymuję błąd socket.io.js nie znaleziono błąd 404. Wypróbuję twój kod później dzisiaj. Czy twoja aplikacja działa na serwerze Heroku? Czy możesz udostępnić URL, jeśli działa? – jeewan

Powiązane problemy