Fri Jan 21 2022
...
FastComments objavljuje renderovanje na serverskoj strani
! Ovaj članak sadrži tehnički žargon
Šta je novo
Od lansiranja početkom 2020. godine, FastComments je isključivo koristio JavaScript za renderovanje vidžeta za komentare.
Šta ako vam kažemo da možete imati skoro sve iste osnovne funkcionalnosti, ali bez korišćenja JS-a?
Gore prikazani snimak ekrana je vidžet za komentare FastComments, bez JavaScript-a. Možete pogledati ovu stranicu, bez JavaScript-a, ovde.
Kako ga koristiti
Ako koristite WordPress, FastComments dodatak verzije 3.10.1 automatski dodaje podršku za SSR kao rezervu za vaše korisnike koji pregledaju sa isključenim JS-om.
Za prilagođene implementacije, preuzmite UI za nit komentara, jednostavno pozovite /ssr/comments za tu stranicu:
Gde je $urlId url, ili id, stranice. Dokumentacija o ovome se nalazi ovde.
Na primer, sa PHP-om možemo poslati iframe na stranicu koja renderuje nit komentara unutra:
Takođe možemo napraviti API poziv da dobijemo HTML za nit komentara i da ga renderujemo ili sačuvamo.
Kompletna dokumentacija je dostupna u SSR dokumentaciji na docs.fastcomments.com.
SSO
Pošto volimo akronime koji zvuče kao preduzetnički, ne brinite, SSR podržava SSO. Primer Single-Sign-On sa SSR-om je ovde.
Lokacija
SSR zasnovana tačka pristupa automatski lokalizuje odgovor na osnovu jezičkih zaglavlja koje pretraživač šalje. Takođe može koristiti iste lokalizacione izuzeća kao i vidžet zasnovan na JavaScript-u.
Zašto je ovo izgrađeno
Jedna od glavnih pritužbi na usluge poput FastComments je da zahtevaju JS. Već radimo da naš vidžet za komentare bude što je moguće manji i osiguramo da ispunimo naše SLAs za API pozive od < 20ms, ali mnoge manje zajednice neće izabrati takvo rešenje ako to znači dodavanje JS-a na svoj sajt.
Ovo takođe otvara priliku da se koriste renderovanje engine-ovi koji nemaju pristup JavaScript-u.
Tehnologija
FastComments koristi svoj mali mikroframework za renderovanje UI-a. Ovaj framework koristi sličan pristup kao React, osim što su manuelne DOM manipulacije van inicijalnog renderovanja dozvoljene.
Osnovna biblioteka vidžeta za komentare ima jedinstvenu tačku ulaza - uzima skup stanja i stvara rezultatajući HTML i CSS koji treba renderovati. Ovo jednostavno pozivamo i na serveru. Kada korisnik interaguje sa stranicom, stanje se menja i najnoviji HTML se preuzima. Ovo je izgrađeno kao rezultat hakatona koji se odigrao kao deo novogodišnjih proslava.
Uživanje u komentarisanju
Pošto je UI renderovan od strane servera, jednom, funkcionalnosti uživo komentarisanja nisu dostupne.
Dodatno, obaveštenja nisu trenutno dostupna. Bićemo otvoreni za dodavanje ove funkcionalnosti u budućnosti.
Performanse
UI renderovan na serveru koristi iste optimizacije skladišta i renderovací motor kao vidžet zasnovan na JavaScript-u. Za male nitove komentara, performanse su zapravo bolje, jer korisnik ne mora preuzimati skriptu koja zatim preuzima komentare i renderuje UI.
Crawlers i SEO
FastComments već dobro funkcioniše sa web crawler-ima; ako je SEO zabrinutost, korišćenje SSR-a nije obavezno.
Buduće primene
Planiramo da u budućnosti lansiramo rešenje za Forume. Tradicionalno, forumi su paginirani i renderovani na serverskoj strani. Moderna rešenja za forume se udaljavaju od ove norme koristeći beskonačno skrolovanje i renderovanje na strani klijenta. Mi ne mislimo da to mora biti jedina opcija za korišćenje rešenja za Forume trećih strana.
Na kraju
Nadamo se da ste našli ovaj vodič korisnim i lakim za čitanje. Slobodno komentarišite ispod sa bilo kakvim pitanjima.
Pozdrav!
