2017-07-30 133 views
0

我想在一個web應用程序上工作,這是我的第一個web應用程序。我收到此錯誤:如何解決HTTP錯誤403.14 - 禁止

HTTP錯誤403.14 - 禁止 Web服務器配置爲不列出此目錄的內容。

如何配置網絡服務器?我甚至不知道它在說什麼目錄。

應用程序試圖去這裏:http://localhost:22025/

我試圖尋找,但很少相關的信息出現。我在運行框中鍵入了inetmgr,但沒有出現。所以我嘗試安裝IIS 7.5,但它說我已經安裝了一個更新的版本。

我發現它是IIS快車。我也發現這個信息https://docs.microsoft.com/en-us/iis/extensions/using-iis-express/running-iis-express-from-the-command-line

但我無法弄清楚如何設置它。我打賭沒有exe文件,但即使我找出輸出文件類型是什麼,這仍然允許我在IDE中進行調試?

我一直在開發窗口應用程序超過10年,並有一個堅實的編程知識,但與此我不知道從哪裏開始,甚至什麼樣的教程搜索。

編輯: https://github.com/Marvelous-Software/Challenge

EDIT2: 當我開發一個.NET類庫,我可以將它指向一個exe和測試類。

enter image description here

AssemblyName.ClassName test; 

test = new AssemblyName.ClassName(); 
test.SomeProperty = 1; 
Console.WriteLine(test.SomeProperty); //If '1' display then the property worked 
test.SomeMethod(); 

即,關於如何在.NET測試類庫的例子。我想學習web api。我該怎麼做呢?我如何運行代碼?

+0

你設置默認頁的網站?我想你可以在解決方案資源管理器中右鍵單擊一個,比如說「default.aspx」,並將其設置爲「起始頁」或類似的名稱。 –

+0

您正在創建哪種類型的Web應用程序,Web窗體,mvc,web api,wcf服務,asp.net核心 –

+0

在IIS中,將默認文檔類型添加到您擁有的配對文檔中。 – TGarrett

回答

3

在訪問GitHub鏈接後,我可以看到它是一個Web API項目,因爲Api/Controllers內部的控制器繼承ApiController,而且你可以看到WebApiConfig.cs路線是

routeTemplate: "api/{controller}/{id}"

需要在航線提供控制器名稱,以便在平控制器的缺省路由將變爲

http://localhost:22025/api/ping

只是說明你的理由爲403.14,在其他的答案說,你的應用需要一個默認的文件給在默認路由,即只是基本路徑的響應,這是通常不是與網頁API的情況下因爲它們不是通常是爲終端用戶設計,但是作爲其他客戶端的端點,它將向用戶或另一個Api呈現UI。

你可以找到網頁API文檔here

編輯#1 - 基於OP編輯#2

雖然你可以通過它引用到一個EXE測試類庫,即沒有單元測試這是原始的意義。你應該更好地使用像MSTest這樣的測試框架。更多信息可以發現here

希望幫助

+0

我嘗試了http:// localhost:22025/api/ping並收到「無法連接」。我編輯了原始問題以說明如何對類庫進行測試。我希望你能明白我在找什麼。我想實際上做些事情。如果我可以運行代碼,我可以從中學習。如果我能從中學習,我可以修改它。 –

+0

@JohnMaher在啓動Web應用程序後發生了錯誤。我也已經更新了相應的答案 –

+0

忘記啓動應用程序!衛生署!無論如何,生食更適合學習。我現在對學習更感興趣,而不是「更好」。如果我能開始,我可能會更好。剛開始很難。現在我收到「{」Message「:」沒有找到與請求URI'http:// localhost:22025/api/png'。「,」MessageDetail「匹配的HTTP資源:」沒有找到與指定控制器相匹配的類型'png'。「}」我嘗試了http:// localhost:22025/api/PingController,但那也不起作用。 –

1

您缺少Web服務器(IIS或IIS Express)中的「默認文檔」配置,可以採用多種方式進行配置,每種配置都取決於您使用的Web框架。微軟ASP.NET堆棧中最常見的是:

-WebForms:當你的項目中有很多擴展名爲.aspx的文件時,通常稱爲Default.aspx,Index.aspx,Home.aspx。你可以嘗試一下類似於你的瀏覽器http://localhost:22025/Default.aspx或你想要的另一個頁面。如果這樣的作品,你可以當它在這個帖子的描述配置web.config文件https://blogs.iis.net/bills/how-to-add-a-default-document-with-iis7-web-config

-ASP.NET MVC:當你有一個名爲型號控制器查看,你可能有控制器文件夾命名爲HomeController。 MVC中的默認約定是HomeController,Action Index是默認約定。因此,輸入如http://localhost:22025/首頁應該足以查看您的網站。

一旦你意識到你在使用哪個框架,然後搜索諸如「在xxx框架中配置默認​​文檔」之類的東西來獲得更多信息。如果你打賭,在web應用程序中,你沒有一個EXE文件作爲輸出,實際上,你有一個完整的「輸出目錄」,在「Bin」文件夾中有一個主.dll文件,C#編譯內容爲您的網站;還有許多擴展名爲.js,.css,.jpg和其他「靜態」文件的文件。

這個材料應該是一個從零開始創建第一個Web應用程序的好起點。 https://docs.microsoft.com/en-us/aspnet/mvc/overview/getting-started/introduction/getting-started

讓我知道這是否幫助過你, 有一個愉快的一天

編輯:在的WebAPI項目的情況下,你沒有一個用戶界面,通常和它的作品完全一樣@Abhishek Siddhu回答,你可以嘗試一些調試工具,如郵差或提琴手來匹配動作中的另一個http動詞。因爲使用Web瀏覽器,你只能測試Get命名動作(那些使用HttpGet動詞)

+0

這裏沒有aspx。文件夾稱爲API,數據,實體和服務。我實際上正在嘗試修改一個我已經受到挑戰的現有項目,以添加一個寧靜的服務來檢索郵政編碼。我找到了有關寧靜意味着什麼的文檔,只是無法弄清楚如何與這個項目聯繫起來。我試圖運行它,當我收到錯誤。 –

相關問題