Для начало, я не использую node.js, но настроить на node, на самом деле не сложно. Это работает на любых Spa Фреймворках или библиотек.
Так люди делаем следующие шаги, для начало устанавливаем пакет
dotnet add package Microsoft.AspNetCore.SpaServices.Extensions --version 6.0.2
Далее добавляем сервис, вы можете сами указать путь который вам нравиться, так как изначально у меня Vue был там я до сих пор использую "wwwroot"
builder.Services.AddSpaStaticFiles(options =>
{
options.RootPath = "wwwroot";
});
И важный момент, сам маршрутизатор, после следующего кода все запросы(кроме тех которые вы заранее написали), отправляться на файл index.html(то есть там где вы храните свое Spa)
app.UseSpa(spa =>
{
spa.Options.SourcePath = "wwwroot";
});
Однако теперь ошибку 404 придётся реализовать на стороне клиента. Так же это отлично работает с Mvc и c RazorPages(который я использую)