Sto provando a creare un'applicazione a pagina singola in AngularJS con il routing sul lato client eseguito in modalità HTML5. Nel caso in cui gli utenti aggiungano un segnalibro a una pagina sul mio sito, capisco che ho bisogno di uno schema di routing di base sul server, ma voglio davvero che venga sempre pubblicato sulla mia singola homepage e propaghi lo stesso URL sul pezzo di instradamento sul lato client.ASP.NET MVC 4 Percorso per URL SPA angolari Bookmarking
Questo catch-all percorso funziona perfettamente su semplici URL che sono solo una profonda:
routes.MapRoute(
"Default", // Route name
"{*catchall}", // URL with parameters
new { controller = "Home", action = "Index" } // Parameter defaults
);
URL di esempio: percorsi
http://myapp.com/moreInfo
http://myapp.com/contactUs
"moreInfo" e "contactUs" sono appena nominato all'interno angolare . L'unico vero punto di accesso all'applicazione a pagina singola è http://myapp.com. Finora, tutto funziona perfettamente.
Quando provo ad andare più di un percorso profondo, però, l'applicazione va in un ciclo infinito:
http://myapp.com/user/5
È questo perché il mio percorso sul lato server non è sufficiente a "passare lungo" del " utente/5 "URL per la mia applicazione client? Devo fare qualcosa di speciale per assicurarmi che, non importa quanto profondamente sia annidato l'URL, viene passato correttamente al mio SPA?