Sto costruendo una SPA (applicazione a singola pagina) in modo che quando un browser richiede una pagina dal mio server, riceve solo un piccolo HTML e una grande app JavaScript che richiede i dati appropriati dal server, esegue il rendering dell'HTML localmente e generalmente guida l'app locale. Pensa a app come Gmail o Google Maps che non ricaricano mai più la pagina.
Ciò rende le applicazioni molto scattanti, ma significa che se l'agente utente non esegue JavaScript, non c'è alcun contenuto. Questo è un problema quando il sito web viene indicizzato dai motori di ricerca o quando un'app richiede un certo contenuto per questo (pensa a postare link a Facebook, Twitter, LinkedIn, come ottenere uno snippet del contenuto).
Per aggirare il problema, sto pre-rendering delle pagine eseguendo la parte JavaScript sul server. Funziona, ma è piuttosto lento. Poiché la maggior parte delle volte questa esecuzione di JavaScript non sarà necessaria, sto pensando di autorizzare alcuni browser, come Chrome, Safari, Firefox, anche versioni recenti di IE per non ottenere il pre-rendering.
Funzionerebbe o sono i robot più utili là fuori che si identificano come browser? Come posso raccogliere queste informazioni? Qualsiasi fonte su user-agent di bot buoni e cattivi?