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