Jak uzyskać AngularJS działający z atrybutem ServiceStack FallbackRoute w celu obsługi adresów URL pushstate HTML5?

Buduję rozwiązanie klient / serwer, używając aplikacji AngularJS Single Page App jako komponentu klienta i API Self-Host ServiceStack RESTful jako komponent serwera. Pojedynczy projekt aplikacji Visual Studio Console zawiera pliki HTML i JavaScript dla komponentu AngularJS wraz z klasami C # do ładowania aplikacji ServiceStack AppHost (przekazałem obowiązki interfejsu i usługi w celu oddzielenia projektów Visual Studio).

Ustawiłem wszystkie pliki HTML i JavaScript na „Akcja kompilacji” z „Brak” i „Kopiuj do katalogu wyjściowego” z „Kopiuj, jeśli nowsza”.

Wszystko działa bardzo dobrze, o ile jestem gotowy pogodzić się z posiadaniem „#” w adresach URL mojej witryny. Chciałbym to wyeliminować, używając adresów URL pushstate HTML5.

W rzeczywistości oznacza to, że muszę przekonać ServiceStack, aby wyświetlał moją domyślną stronę powłoki HTML aplikacji pojedynczej strony za każdym razem, gdy żądana jest nieistniejąca trasa. Jest terazFallbackRoute atrybutdostępne w ServiceStack który wydaje się być dodany dokładnie w tym celu.

Nie jestem jednak pewien, jak go używać. Znalazłem ludzi zadających podobne pytaniatutaj, tutaj itutaj. Ale wszystkie odpowiedzi były przed pojawieniem się nowego atrybutu FallbackRoute.

Zasadniczo szukam prostego, ale pełnego przykładu użycia atrybutu FallbackRoute, aby upewnić się, że wszystkie żądania nieistniejących tras są przekierowywane do pojedynczej statycznej strony HTML.

questionAnswers(2)

yourAnswerToTheQuestion