【发布时间】:2020-08-05 12:14:28
【问题描述】:
我有一个在 Azure 中开发、部署和运行的 Dot Net Core Web API。它现在用作 API 网关。当用户在浏览器中点击 url 的根目录时,我想提供 HTML 内容。
我们的网站内容通过静态网站发布到 CDN 后面的 Azure 存储。我按照以下链接中的步骤进行了设置。
https://microsoft.github.io/AzureTipsAndTricks/blog/tip203.html
我们如何在我的 dot net core web api 中从 azure 存储中提供这些内容并将该内容返回到浏览器。
我有以下代码,适用于我在本地拥有的内容。
public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
{
if (env.IsDevelopment())
{
app.UseDeveloperExceptionPage();
}
else
{
app.UseExceptionHandler("/Home/Error");
app.UseHsts();
}
app.UseHttpsRedirection();
app.UseStaticFiles();
app.UseRouting();
app.UseAuthorization();
app.UseEndpoints(endpoints =>
{
endpoints.MapDefaultControllerRoute();
});
}
我应该在静态网站 blob 下读取 azure storage 的内容并将其返回还是只是重定向到静态网站或 CDN url。
我正在尝试按照下面答案 2 中的建议使用 ocelot 的架构
【问题讨论】:
-
是的,它从本地文件夹提供服务。静态文件存储在项目的 Web 根目录中。
-
I can change launchUrl value to: http://localhost:4343 to point it to root to return index html. But not sure how to return azure cdn content.这句话是什么意思?您的意思是要将其发布到 Azure 进行托管? -
我已经将 react 项目的前端 SPA 静态文件发布到 azure storage -> 静态网站。当用户点击 dot net core api 的根目录时,我想返回该内容。
-
您的意思是您已经为 api 创建了
azure web app,并希望通过azure static web app提供静态内容。
标签: c# azure .net-core asp.net-core-webapi