Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [NodeJS][Socket.IO] Unexpected response code: 200
axl
post
Post #1





Grupa: Zarejestrowani
Postów: 9
Pomógł: 0
Dołączył: 18.10.2009

Ostrzeżenie: (0%)
-----


Witam
od niedawna bawię się z NodeJS i mam taki problem mianowicie consola przeglądarki zwraca mi coś takiego
Kod
WebSocket connection to 'ws://node.*****.pl/socket.io/1/websocket/ejl0vdK7yG7daX-2tBjv' failed: Unexpected response code: 200

w tym consola z node js
Kod
info  - socket.io started
   info  - handshake authorized ejl0vdK7yG7daX-2tBjv
   warn  - websocket connection invalid
   info  - transport end (undefined)


dla subdomeny mam ustawiony htaccesstaki
Kod
RewriteEngine on
RewriteCond %{HTTP_HOST} ^node\.*****\.pl$ [OR]
RewriteCond %{HTTP_HOST} ^www\.node\.*****\.pl$


RewriteRule ^(.*)$ "http\:\/\/127\.0\.0\.1\:8080\/$1" [P,L]


po stronie clienta
Kod
var socket;
socket = io.connect("http://node.****.pl", { transports: ["websocket"]});
        
socket.on("connect", onSocketConnected);
socket.on("disconnect", onSocketDisconnect);
socket.on("new player", onNewPlayer);
socket.on("move player", onMovePlayer);
// i tak dalej same eventy już

po stronie serwera
Kod
var util = require("util"),
    io = require("socket.io"),
    Player = require("./player").Player; // osobna classa trzymająca dane gracza
    
var socket,
    players;
    
function init() {
    players = [];
    npc        = [];
    
    socket = io.listen(8080);

    socket.configure(function() {
    
            socket.set("transports", ["websocket"]);
            socket.set("log level", 2);
    });


    setEventHandlers();
};

var setEventHandlers = function() {
    socket.sockets.on("connection", onSocketConnection);
};

function onSocketConnection(client) {
    util.log("New player has connected: "+client.id);
    client.on("disconnect", onClientDisconnect);
    client.on("new player", onNewPlayer);
    client.on("move player", onMovePlayer);
    client.on("shoot player", onShootPlayer);
    client.on("say", onSayPlayer);
    client.on("punch", onPunchPlayer);    
    client.on("dead player", onDeadPlayer);
};

/* funkcje onClientDisconnect itp */


init();

Bardzo proszę o pomoc, nie mam pojęcia o co tutaj chodzi

<b>EDIT</b>
na localhoscie działa bez problemu ale na tym serwerze już nie, sprawdzałem też na porcie 8000 i bez różnicy

Ten post edytował axl 25.11.2013, 16:17:04
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 2)
werdan
post
Post #2





Grupa: Zarejestrowani
Postów: 354
Pomógł: 100
Dołączył: 14.11.2013
Skąd: Płock

Ostrzeżenie: (0%)
-----


Sprawdzałes te adresy ws:// ?

http://www.websocket.org/echo.html

Tu masz tester. Moze coś pomoże.
Go to the top of the page
+Quote Post
axl
post
Post #3





Grupa: Zarejestrowani
Postów: 9
Pomógł: 0
Dołączył: 18.10.2009

Ostrzeżenie: (0%)
-----


Właśnie miałem pisać, co znalazłem ale za bardzo i tak nie wiem jak to rozwiązać to wina apacha że idzie przez mod rewrite ponieważ przez xhr-polling idzie prawidłowo wszystko działa jak należy ale niestety w tworzeniu gry xhr mnie interesuje ... wole websocket ,wydaje mi się lepszym rozwiązaniem. I właśnie przez tego mod_rewrite nie przekierowuje ws:// :/

//edit

adresy ws:/ muszą działać bo przy każdej próbie połaczenia w consoli nodeJs "wywala mi"
Kod
   info  - handshake authorized ejl0vdK7yG7daX-2tBjv
   warn  - websocket connection invalid
   info  - transport end (undefined)

i tak w kółko co każdą następna próbe połaczenia on("connection") więc adresy powinny być ok

Ten post edytował axl 25.11.2013, 22:50:37
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 23.08.2025 - 12:33