Ho appena avuto questa fantastica idea di simulare un'applicazione a singola pagina usando iframe. Sto usando un framework che usa i layout per visualizzare le pagine. Fortunatamente posso utilizzare un layout vuoto (ovvero non ha elementi aggiuntivi oltre ai tag html obbligatori) per visualizzare solo il corpo della pagina all'interno di un iframe una volta che la pagina è stata caricata con il layout originale.
Penso che possa essersi creato un po 'di confusione, quindi sostanzialmente questa è la mia idea:
L'utente apre il sito, il sito carica il layout principale con l'intestazione e la navigazione e tutto il resto. Quindi il corpo del layout viene visualizzato all'interno di un iframe che sta ottenendo il suo contenuto dallo stesso url utilizzando la stessa pagina ma un layout diverso (uno vuoto).
Il problema: come faccio a distinguere tra se si tratta di una richiesta iniziale in arrivo o solo un'altra richiesta di pagina?
La soluzione - Se potessi in qualche modo rilevare richieste provenienti da iframe, potrei semplicemente sapere quando usare il layout principale o il layout vuoto. C'è un modo per rilevare le richieste inviate dagli iframe?
Ho anche pensato che potrei avere link speciali per caricare il contenuto della pagina, ad esempio se un utente apre la pagina http://example.com/products
, quindi restituirei il layout principale e nell'iframe vorrei inviare una richiesta a http://example.com/empty/products
. Ma poi dovrò modificare tutti i link in tutte le pagine per contenere /empty/
in essi o avrò il layout principale visualizzato all'interno del corpo della richiesta originale.