簡體   English   中英

如何包含用 ASP.NET 編寫的 API 的起始頁?

[英]How to include an start-page for an API written in ASP.NET?

我繼承了一個相當未公開的 Visual Studio API 項目,其中包含許多子項目,其中一個稱為API ,我假設我正在查看的是 ASP.net。

項目結構

背景

我一直在使用使用不同技術和框架(perl、cgi、python、flask,僅舉幾例)構建的 API,但我是新的 ASP.net。 經過幾天的研究,我讓 API 在 Visual Studio (VS) 中運行,並且它還與 UI 對話。

挑戰

由於我在 VS 中有兩個啟動項目,因此在 VS、UI 和 API 中點擊啟動時會打開兩個瀏覽器窗口。 UI 做了它應該做的事情,但是帶有 API 的瀏覽器顯示了這樣的 HTTP 404 錯誤

404錯誤

這意味着我可能定義了各種端點/foo/bar ,但沒有/ 我怎么做? 理想情況下,它應該返回一個帶有 API-(子)項目名稱和當前版本的 json。

我到目前為止的方法

為了自己解決問題,我缺少正確的 ASP.net 搜索詞。 我什至在努力實施解決方法以在/處提供純 HTML 文件。 項目樹中的index.html在哪里? 我嘗試了根文件夾以及名為public的文件夾,但兩者都不起作用,我一直收到 404 錯誤。

非常感激你的幫助!

您在這里有兩個選項,用於自動記錄您的端點。

  1. 使用可能包含在 Visual Studio 項目模板中的HelpPage
  2. 使用swashbuckle nuget 包安裝 swagger

如果您選擇選項 1,那么您可能需要使用項目模板並選擇適合的模板。 然后,您應該將所有現有代碼復制到新項目模板中。

Swagger現在似乎更受歡迎,因此您應該嘗試一下,特別是如果您正在處理現代代碼庫。 您可以向控制器端點添加 XML 注釋,它們將顯示在您的 swagger 頁面http:/localhost/swagger/ui/index 您將需要安裝 nuget 包並按照教程進行操作。

假設您在根目錄中創建了一個index.html文件,為了獲得顯示為(子)項目起始頁的文件,請在解決方案資源管理器中右鍵單擊該項目,選擇Properties 將彈出一個新視圖,您可以在其中定義Web > Start Action以指向您輸入index.html特定頁面(而不是當前頁面)。 CTRL+S保存,然后啟動項目。

API 屬性

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM