UrlRewrite Middleware и клиентские приложения

Я даже не уверен, что переписывание URL подойдет для моего случая использования, но у меня есть ощущение, что это может (использование Microsoft.AspNetCore.Rewrite). У меня есть клиент, обслуживаемый моим проектом ASP.NET Core с UseStaticFiles(). Этот же проект также использует default MVC с маршрутами, как указано ниже в моем запуске Configure метод:

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

Мое клиентское приложение выполняет внешний вызов, который получает обратный вызов от другой службы, и этот обратный вызов содержит фрагмент url / hash, чтобы клиентское приложение могло обрабатывать все, что находится во фрагменте url / hash. Допустим, эта служба отвечает /callback#foo='bar',

Просто еще немного контекста, что происходит, что мое клиентское приложение выполняет вход от поставщика openid-connect, и при входе в систему происходит то, что вы перенаправлены к поставщику, этот поставщик перенаправляет вас обратно в ваше приложение с токеном в фрагмент хэша (при успешном входе в систему), поэтому, когда мое приложение ASP.NET Core получает запрос callback#foo=bar Я хочу, чтобы он служил моему статическому приложению в wwwroot с хеш-фрагментом на месте, чтобы мое клиентское приложение могло использовать хеш-фрагмент (то есть токен, возвращаемый провайдером)

1 ответ

Похоже, вы хотели бы использовать пользовательский URL для статических файлов из wwwroot. В этом случае вы можете сделать это

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

Другие вопросы по тегам