Fri Jan 21 2022
...
FastComments Rilascia il Rendering Lato Server
! Questo Articolo Contiene Jargon Tecnico
Novità
Dalla sua lancio all'inizio del 2020, FastComments ha usato esclusivamente JavaScript per rendere il widget dei commenti.
E se ti dicessimo che puoi avere quasi tutta la stessa funzionalità essenziale, ma senza utilizzare JS?
Lo screenshot sopra è il widget dei commenti di FastComments, senza JavaScript. Puoi visualizzare questa pagina, senza JavaScript, qui.
Come Usarlo
Se stai usando WordPress, la versione 3.10.1 del plugin FastComments aggiunge automaticamente il supporto per SSR come fallback per i tuoi utenti che navigano con JS disabilitato.
Per implementazioni personalizzate, recupera l'interfaccia utente per un thread di commenti, basta chiamare il /ssr/comments per quella pagina:
Dove $urlId è l'url, o id, della pagina. La documentazione su questo è qui.
Ad esempio, con PHP possiamo inviare un iframe alla pagina che rende il thread di commenti all'interno:
Potremmo anche fare una chiamata API per ottenere l'HTML per un thread di commenti, e renderizzarlo o memorizzarlo.
La documentazione completa è disponibile nella Documentazione SSR su docs.fastcomments.com.
SSO
Poiché amiamo acronimi che sembrano aziendali, non preoccuparti, SSR supporta SSO. Un esempio di Single-Sign-On con SSR è qui.
Localizzazione
L'endpoint basato su SSR localizza automaticamente la risposta in base alle intestazioni relative alla lingua inviate dal browser. Può anche utilizzare le stesse sovrascritture di localizzazione del widget basato su JavaScript.
Perché È Stato Costruito
Una delle principali lamentele riguardo ai servizi come FastComments è che richiedono JS. Abbiamo già reso il nostro widget dei commenti il più snello possibile e assicuriamo di rispettare i nostri SLA per le chiamate API di < 20ms, ma molte comunità più piccole non sceglieranno una tale soluzione se comporta l'aggiunta di JS al loro sito.
Questo apre anche la possibilità di utilizzare motori di rendering che non hanno accesso a JavaScript.
La Tecnologia
FastComments utilizza il proprio piccolo microframework per il rendering dell'interfaccia utente. Questo framework utilizza un approccio simile a React, tranne per il fatto che sono consentite manipolazioni manuali del DOM al di fuori del render iniziale.
La libreria centrale del widget dei commenti ha un singolo punto di ingresso - prende un insieme di stato e crea HTML e CSS risultanti da rendere. Chiamiamo semplicemente questo anche sul server. Quando l'utente interagisce con la pagina, lo stato viene cambiato e l'ultimo HTML viene recuperato. Questo è stato costruito a seguito di un hackathon che ha avuto luogo come parte del nuovo anno.
Commenti Dal Vivo
Poiché l'interfaccia utente è resa dal server, una sola volta, le funzionalità di commento dal vivo non sono disponibili.
Inoltre, la campanella delle notifiche non è attualmente disponibile. Saremo aperti ad aggiungere questa funzionalità in futuro.
Prestazioni
L'interfaccia utente renderizzata dal server utilizza le stesse ottimizzazioni di archiviazione e motore di rendering del widget basato su JavaScript. Per piccoli thread di commenti, le prestazioni sono in realtà migliori, poiché l'utente non deve scaricare uno script che poi recupera i commenti e rende l'interfaccia utente.
Crawlers e SEO
FastComments funziona già bene con i crawler web; se il SEO è una preoccupazione, utilizzare SSR non è necessario.
Applicazioni Future
Pianifichiamo di lanciare una soluzione Forum in futuro. Tradizionalmente, i forum sono paginati e renderizzati lato server. Le moderne soluzioni per Forum si allontanano da questa norma utilizzando lo scrolling infinito e il rendering lato client. Non pensiamo che questa debba essere l'unica opzione per utilizzare una soluzione Forum di terze parti.
In Conclusione
Ci auguriamo che tu abbia trovato questa guida utile e facile da leggere. Sentiti libero di commentare qui sotto con qualsiasi domanda.
Saluti!
