Kirjautuminen

Haku

Tehtävät

Keskustelu: Nettisivujen teko: Flask/jQuery/Socket.IO-ongelma

jtonttu [09.09.2016 10:37:33]

#

Olen nyt muutaman päivän hakannut päätä seinään, kun yksinkertainen WebSocket-koodi ei toimi. Olen rajannut ongelman seuraavaan:

var socket = io.connect("localhost:5000");  // Yhteys muodostuu niin kuin pitäisi

socket.on("message", function(message) {
  console.log("Message received from server: " + message);
});  // Palvelimelta saadut viestit tulostuu konsoliin kuten pitäisi

socket.emit("message", "Testing client-side messaging");  // Palvelin saa viestin ja tulostaa kuten pitäisi

$("#painike").click(function() {
  console.log("Painike painettu");  // Tulostuu konsoliin
  socket.emit("message", "Painike painettu");  // EI PERKELE TOIMI!
});

Painike on tällä hetkellä vain:

<button type="button" id="painike">Painike</button>

Yhdessä välissä oli kiinnostava ilmiö: tein omat painikkeet yhteyden muodostamiselle sekä sulkemiselle. Emit()-painike ei toiminut silloinkaan, paitsi jos suljin yhteyden, sitten painoin emit()-painiketta ja käynnistin yhteyden uudelleen. Tällöin jostain syystä palvelin sai viestin.

Lisäys: Kävi mielessä ongelman olevan tuon socketin scope, mutta ymmärtääkseni painikkeen koodi pääsee siihen käsiksi. En kuitenkaan ymmärrä Javascriptin päälle niin paljon, että olisin varma asiasta.

HTML5 [09.09.2016 18:22:58]

#

Muuttuja socket kyllä näkyy funktion sisälle, joten se ei ole ongelma.

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta