У меня есть приложение .NET 8 с интерфейсом vue3. По умолчанию он обслуживает index.html со своего сервера разработки:
Vite App
Я хотел бы перехватить это, чтобы иметь возможность динамически отображать на стороне сервера такие вещи, как тег .
Как можно Я управляю возвращаемым содержимым index.html как при разработке, так и при производственной сборке? Либо используя Microsoft.AspNetCore.SpaServices.Extensions, который я использую сейчас, либо более современный (?) подход с AspNetCore.SpaProxy.
Должен ли я это делать пользовательское приложение app.MapGet("/", () => ... возвращает пользовательский index.html или есть ли какая-либо поддержка этого в пакетах nuget?
Что У меня до сих пор, на первый взгляд все в порядке. Не уверен, что оно достаточно надежное, или я пропустил что-то, предусмотренное расширениями Microsoft:
app.UseStaticFiles(new StaticFileOptions
{
FileProvider = new PhysicalFileProvider(Path.Combine(Directory.GetCurrentDirectory(), "ClientApp/dist"))
});
app.Use(async (context, next) =>
{
if (context.GetEndpoint() != null || Path.HasExtension(context.Request.Path.Value))
{
await next();
return;
}
var htmlGenerator = context.RequestServices.GetRequiredService();
context.Response.ContentType = "text/html";
await context.Response.WriteAsync(htmlGenerator.GetHtml());
});
Подробнее здесь: https://stackoverflow.com/questions/791 ... e-page-app
Динамическое содержимое index.html для одностраничного приложения ⇐ C#
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение