FastComments.com Blog

Fri Jan 21 2022
...

FastComments objavljuje renderiranje na strani poslužitelja

! Ovaj članak sadrži tehnički žargon

Što je novo

Od lansiranja početkom 2020., FastComments je isključivo koristio JavaScript za renderiranje widgeta za komentiranje.

Što ako vam kažemo da možete imati gotovo sve iste bitne funkcionalnosti, ali bez korištenja JS-a?

Ovo je snimka zaslona, prestanite pokušavati kliknuti na nju.
SSR Demo

Gornja snimka zaslona prikazuje FastComments widget za komentiranje, bez JavaScripta. Možete pogledati ovu stranicu, bez JavaScripta, ovdje.

Kako to koristiti

Ako koristite WordPress, verzija 3.10.1 dodatka FastComments automatski dodaje podršku za SSR kao rezervu za vaše korisnike koji pregledavaju s onemogućenim JS-om.

Za prilagođene implementacije, preuzmite UI za nit komentara, jednostavno pozovite /ssr/comments za tu stranicu:

https://fastcomments.com/ssr/comments?tenantId=$tenantId&urlId=$urlId&url=$url

Gdje je $urlId url ili id stranice. Dokumentacija o ovome je ovdje.

Na primjer, s PHP-om možemo poslati iframe na stranicu koja renderira nit komentara unutar:

Primjer SSR-a temeljen na PHP-u
1
2<?php
3$tenantId = rawurlencode("my-tenant-id");
4$urlId = rawurlencode("my-page-url-article-id");
5$url = rawurlencode("my-page-url");
6
7$fastcomments_url = "https://fastcomments.com/ssr/comments?tenantId=$tenantId&urlId=$urlId&url=$url";
8?>
9<iframe
10 src="<?php echo $fastcomments_url; ?>"
11 horizontalscrolling="no"
12 allowtransparency="true"
13 frameborder="0"
14 title="FastComments"
15 width="100%"
16 height="1500px"
17 style= "width: 1px !important; min-width: 100% !important; border: none !important; overflow: hidden !important;"
18></iframe>
19

Također, možemo napraviti API poziv kako bismo dobili HTML za nit komentara i renderirali ili pohranili ga.

Potpuna dokumentacija je dostupna u SSR dokumentima na docs.fastcomments.com.

SSO

Budući da volimo akronime zvučne kao poduzeće, ne brinite, SSR podržava SSO. Primjer jedinstvenog prijavljivanja s SSR-om je ovdje.

Lokalizacija

SSR temeljen endpoint automatski lokalizira odgovor na temelju jezičnih zaglavlja koje preglednik šalje. Također može koristiti ista lokalizacijska zamjena kao JavaScript temeljen widget.

Zašto je ovo napravljeno

Jedna od glavnih pritužbi na usluge poput FastComments je ta da zahtijevaju JS. Već činimo naš widget za komentiranje što je moguće manjim i osiguravamo da ispunjavamo SLAs poziva našeg API-ja od < 20ms, ali mnoge manje zajednice neće odabrati takvo rješenje ako to znači dodavanje JS-a na svoju stranicu.

To također otvara priliku za korištenje renderirajućih motora koji nemaju pristup JavaScriptu.

Tehnologija

FastComments koristi svoj mali mikro okvir za renderiranje UI-a. Ovaj okvir koristi sličan pristup Reactu, osim što su dozvoljene ručne dom manipulacije izvan inicijalnog renderiranja.

Osnovna biblioteka widgeta za komentare ima jedinu ulaznu točku - uzima skup stanja i stvara rezultate HTML-a i CSS-a koji se renderiraju. Ovo također jednostavno pozivamo na poslužitelju. Kada korisnik komunicira sa stranicom, stanje se mijenja i najnoviji HTML se preuzima. Ovo je napravljeno kao rezultat hackathona koji se održao na početku nove godine.

Živo komentiranje

Budući da se UI renderira s poslužitelja, jednom, značajke živog komentiranja trenutno nisu dostupne.

Osim toga, zvono za obavijesti trenutno nije dostupno. Otvoreni smo za dodavanje ove značajke u budućnosti.

Performanse

UI renderiran s poslužitelja koristi iste optimizacije pohrane i motor renderiranja kao i widget temeljen na JavaScriptu. Za male niti komentara, performanse su zapravo bolje, jer korisnik ne mora preuzeti skriptu koja zatim preuzima komentare i renderira UI.

Crawleri i SEO

FastComments već dobro funkcionira s web crawlerima; ako je SEO briga, korištenje SSR-a nije obavezno.

Buduće primjene

Planiramo lansiranje rješenja za forume u budućnosti. Tradicionalno, forumi su paginirani i renderirani s poslužitelja. Moderna rješenja foruma udaljavaju se od ove norme koristeći beskonačno pomicanje i renderiranje na klijentskoj strani. Ne mislimo da to mora biti jedina opcija za korištenje rješenja treće strane za forume.

Na kraju

Nadamo se da ste pronašli ovaj vodič korisnim i lako čitljivim. Slobodno komentirajte ispod s bilo kakvim pitanjima.

Pozdrav!