Nelle applicazioni web a pagina singola, il server fornisce solo la pagina web iniziale, consistente in un documento HTML. Oltre alla struttura di base e al design del sito web, che viene determinato con CSS, questo documento contiene anche un cosiddetto DOM. L’elemento DOM è particolarmente importante per il funzionamento delle applicazioni a pagina singola: è il Document Object Model, che contiene tutto il codice che assicura la funzionalità del sito web. Questo codice è scritto nel linguaggio di programmazione JavaScript.
Durante l’interazione, dei dati in formato JSON o XML vengono caricati in background, invisibili all’utente. Questi vengono poi inseriti automaticamente nel DOM della pagina web caricata. In questo modo, l’intera logica di presentazione dell’applicazione web viene eseguita direttamente lato client, cioè nel browser. Il server fornisce solo dati, non più intere pagine web.
Un esempio noto di applicazione web a pagina singola è il social network Twitter. Quando l’utente richiama la pagina nel browser tramite l’URL, il browser, in qualità di client, invia una richiesta al server. Il sito web viene quindi caricato e messo a disposizione dell’utente. A quel punto, se l’utente interagisce con Twitter, ad esempio per richiamare un profilo, viene eseguito solo il codice JavaScript corrispondente, mentre le deviazioni attraverso il server vengono omesse. In questo modo, il contenuto del sito web viene ricaricato solo gradualmente: ciò rende il carico del server per le applicazioni web a pagina singola piuttosto basso.