C# 如何在WebAPI2中路由前端html文件?
我有一个WebApi 2服务,前端内置C# 如何在WebAPI2中路由前端html文件?,c#,asp.net-web-api2,url-routing,C#,Asp.net Web Api2,Url Routing,我有一个WebApi 2服务,前端内置javascript/jquery和纯html页面,我已经将这些前端文件添加到我的WebApi 2项目中,因此它将更容易调试并部署到服务器 我所有的js文件和样式都在wwwroot中,而由于该项目是由两个“应用程序”构建的,第一个在VMenu文件夹中有html文件,因此,一旦我将html文件添加到该项目中,我接下来要做的就是为em创建静态文件路由,并定义VMenu文件夹的默认页面 但问题来了。。。我希望提供routes之类的文件,就像我在VMenu中有三个文
javascript/jquery
和纯html
页面,我已经将这些前端文件添加到我的WebApi 2项目中,因此它将更容易调试并部署到服务器
我所有的js文件和样式都在wwwroot
中,而由于该项目是由两个“应用程序”构建的,第一个在VMenu文件夹中有html
文件,因此,一旦我将html
文件添加到该项目中,我接下来要做的就是为em创建静态文件路由,并定义VMenu文件夹的默认页面
但问题来了。。。我希望提供routes之类的文件,就像我在VMenu中有三个文件一样,index.html
,menu.html
和expired.html
由于我在编写example.com/vm/
时已将index.html
设置为默认值,因此我可以看到索引页面,但menu.html
和expired.html
的情况也一样,想看看menu.html
我可以只写example.com/vm/menu
而不是example.com/vm/menu.html
但我找不到更多关于这种类型的路由的信息,我找到的所有项目都是基于razor页面的
这是我的启动配置:
public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
{
if (env.IsDevelopment())
{
app.UseDeveloperExceptionPage();
}
else
{
app.UseHsts();
}
app.UseDefaultFiles();
app.UseStaticFiles();
app.UseDefaultFiles(new DefaultFilesOptions()
{
FileProvider = new PhysicalFileProvider(
Path.Combine(Directory.GetCurrentDirectory(), "VMenu")),
RequestPath = "/vm"
});
app.UseStaticFiles(new StaticFileOptions
{
FileProvider = new PhysicalFileProvider(
Path.Combine(Directory.GetCurrentDirectory(), "VMenu")),
RequestPath = "/vm"
});
app.UseHttpsRedirection();
app.UseRouting();
app.UseCors();
app.UseAuthentication();
app.UseAuthorization();
app.UseCookiePolicy();
app.UseEndpoints(endpoints =>
{
endpoints.MapControllers();
});
}