Если вы прочитали документацию для SpaApplicationBuilderExtensions.UseSpa
, вы ясно увидите:
Обрабатывает все запросы с этой точки в цепочке промежуточного программного обеспечения, возвращая страницу по умолчанию для SinglePage Application (SPA).
Это промежуточное ПО следует размещать в конце цепочки, чтобы другое промежуточное ПО для обслуживания статических файлов, действий MVC и т. Д. Имело приоритет.
ИтакSpaMiddleware
перехватывает каждый запрос, поступающий в его точку конвейера, и пытается обработать его как запрос к главной странице SPA (Angular / React / other).
порядок всегда очень важен: ASP.NET Core использует конвейер, поэтому каждое промежуточное ПО, которое вы помещаете в этот конвейер, выполняется в последовательности .Если промежуточное программное обеспечение обрабатывает запрос, не вызывая оставшуюся часть конвейера, тогда запрос останавливается и возвращается ответ.