ASP.NET CORE WebAPI项目 设置HTML静态页面为首页


有时候项目用到前后端分离的思想,是以WebApi作为后端提供数据接口然后结合前端页面展示数据,最终有可能会放到一个项目里打包和部署。在ASP.NET CORE WebAPI项目 设置HTML静态页面为首页如下

将项目用到的静态页面放到wwwroot(服务器根)目录中
这里放的是我自己写的html页面

Startup.cs的Configure()方法里,添加:

//启用静态文件
app.UseStaticFiles();
//这一步很关键
DefaultFilesOptions defaultFilesOptions = new DefaultFilesOptions();
defaultFilesOptions.DefaultFileNames.Clear();
//设置首页,我希望用户打开`localhost`访问到的是`wwwroot`下的Index.html文件
defaultFilesOptions.DefaultFileNames.Add("index.html");
app.UseDefaultFiles(defaultFilesOptions);

重要提示,代码最好按以下顺序执行
UseDefaultFiles->UseStaticFiles->UseMvc

修改过后,调试项目,发现首页还是定向到api/values,而不是Index.html
解决办法:打开Properties\launchSettings.json


可以看到配置文件默认是把调试页面写死了

所以,将launchUrlapi/values改成空值

再次调试项目,能发现localhost定向到wwwroot的首页文件Index.html


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM