7

Nie jestem nawet pewien, czy przepisanie adresu URL będzie pasować do mojego przypadku użycia, ale mam wrażenie, że może (przy użyciu Microsoft.AspNetCore.Rewrite). Mam klienta obsługiwanego przez mój projekt ASP.NET Core z UseStaticFiles(). Ten sam projekt wykorzystuje również default MVC z tras następująco w moim uruchamiania Konfiguruj metody:UrlRewrite Middleware i aplikacje klienckie

app.UseMvc(routes => 
{ 
    routes.MapRoute(
     name: "default", 
     template: "{controller}/{action}"); 
}); 

Moja aplikacja klient robi out zaproszenia zespołu, który otrzyma zwrotnego z innej usługi, a to zwrotna zawiera url/hash fragment aby aplikacja kliencka mogła przetworzyć wszystko, co znajduje się w fragmencie url/hash. Powiedzmy, że ta usługa odpowiada za /callback#foo='bar'.

To tylko trochę więcej kontekstu, co się dzieje, że moja aplikacja kliencka robi logowanie od dostawcy usług OpenID-connect, a po zalogowaniu się, to co się stanie, zostanie skierowane do dostawcy, ten dostawca przekierowuje cię z powrotem do aplikacji z tokena w fragmencie hasza (po pomyślnym zalogowaniu), więc gdy moja aplikacja ASP.NET Core otrzymuje żądanie callback#foo=bar, chcę, aby serwer służył mojej statycznej aplikacji w wwwroot z fragmentem skrótu w miejscu, więc moja aplikacja po stronie klienta może zużywać hash fragment (który jest tokenem zwróconym przez dostawcę)

+0

I może być czegoś brakuje, ale to, co jest tu pytanie? –

+0

Zasadniczo wpisuję localhost: 5000/callback # foo = bar do mojej przeglądarki, chcę, aby służył on mojemu klientowi z fragmentem skrótu w miejscu, aby mój klient mógł spożywać fragment skrótu. Zamiast tego moja aplikacja 404, ponieważ nie mam skonfigurowanego kontrolera dla punktu końcowego/wywołania zwrotnego. – Lutando

Odpowiedz

0

Wygląda na to, że chciałbyś obsłużyć niestandardowy URL plików statycznych ze strony wwwroot. W tym przypadku można to zrobić

app.Map("callback#foo=bar", subApp => subApp.UseStaticFiles());

+0

czy to zadziała, nawet gdy 'foo' i' bar' są zmienne? – Lutando