Kirjoittaja Aihe: EB websocketti nurin  (Luettu 371 kertaa)

0 jäsentä ja 1 Vieras katselee tätä aihetta.

Poissa Zalama

  • Käytännössä asuu täällä
  • ****
  • Viestejä: 158
EB websocketti nurin
« : Keskiviikko, 14.07.2021, 18:28 »
Vähän aiheen vierestä, mutta tutkasivun "reaaliaikaisuus" on ollut kateissa muutaman päivän. Eli sivua ladatessa uusimmat iskut kyllä näkyvät, uusia iskuja ei tule, ja iskuja/min laskuri painuu nollaan.

Poissa weatherc

  • Ylläpito
  • *****
  • Viestejä: 9058
Vs: EB websocketti nurin
« Vastaus #1 : Torstai, 15.07.2021, 10:58 »
Vähän aiheen vierestä, mutta tutkasivun "reaaliaikaisuus" on ollut kateissa muutaman päivän. Eli sivua ladatessa uusimmat iskut kyllä näkyvät, uusia iskuja ei tule, ja iskuja/min laskuri painuu nollaan.

Niin näyttää tekevän. Selain näyttää seuraavanlaista erroria:
Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource. (Reason: CORS request did not succeed).

Ei ne tuota CORS:ia tähän asti ole tuputtaneet websocketista vaikka muutoin olen kyllä törmännyt siihen. Ihme nipottajia tullut näistä nykyisistä selaimista/javascriptistä..
Tuo CORS koskee niitä datoja/elementtejä mitä haetaan varsinaisen domainin ulkopuolelta (tässä tapauksessa a.nordicweather.net:stä), ja jollei siinä ole "suostumus-headeria" mukana niin ei selain/javascript lataa sitä.

Poissa weatherc

  • Ylläpito
  • *****
  • Viestejä: 9058
Vs: EB websocketti nurin
« Vastaus #2 : Torstai, 15.07.2021, 11:57 »
Siirsin omaan aiheeseen :)

Näyttää olevan pikkasen isompi ongelma....
Ensin, taustana, socket.io:ta tarvitaan tavallaan leikkiin 2 kpl, palvelinpuoli sekä selainpuoli. Nämä pitää keskustella keskenään.

Palvelinpuolen versio näyttää olevan niin vanha (1.6.0) ettei se edes tue CORS:ia. Jeps, jeps.  Uusin versio tästä on jotain 4.x.
Lisäksi, jotta ei päivittäminen olisi liian helppoa, ei ainakaan mitä luin, vahnat selainpuolet ymmärrä uusimpia palvelinpuolia....Jee!

Tällä hetkellä palvelinpuoli on 1.6.0, ja selainpuoli näyttää olevan 2.0.3.
Eli tuota palvelinpuolta, jotta CORS olisi tuettu, ei pysty päivittämään vaikkapa v4:seen koska selainpuolen v2 ei ymmärrä sitä.
Siitä ei ole mitään vielä tietoa kuinka vahoja versioita olisi saatavilla.

Eli mitään arviotakaan korjausaikataulusta ei ole...

Poissa weatherc

  • Ylläpito
  • *****
  • Viestejä: 9058
Vs: EB websocketti nurin
« Vastaus #3 : Torstai, 15.07.2021, 15:56 »
Nyt pitäis taas potkia 8)

Palvelinpuoli päivitettiin versioon 3.1.0. Kun kaivoi asetuksia niin löytyi asetus jolla se osaa keskustella selainpuolen v2 kanssa - kun ensin erikseen salli sen. Samoin CORS:it piti erikseen sallia palvelinpuolella, ja - yllätys, yllätys - ehkä 50:s eri kombinaatio siinä antoi tovotun tuloksen....
Samalla tuli päivitettyä niin Node.js:än kuin myös iskujen RAM-tietokantana toimivan Aerospiken, koska - yllätys, yllätys - tuoreempi socket.io ei tukenut noita vanhoja....
« Viimeksi muokattu: Torstai, 15.07.2021, 16:03 kirjoittanut weatherc »