2016-05-13 29 views
-1

使用的WebAPI控制器在我們的項目之前,他們用於XML報告生成網頁API沒有任何身份驗證(匿名)。所有他們通過正常的asp.net的MVC controllerand使用類似處理的事情「本地主機/ ABC /的WebAPI /控制器/導出_參數如何通過URL在ASP.Net MVC

本地主機服務器,

ABC-項目文件夾,

的WebAPI,文件夾,

控制器,控制器名稱,

出口 - 法

012。

以上是使用URL細節訪問XML報告。但只有一件事他們使用了Apicontroller。

像下面,

public virtual HttpResponseMessage ManExport(string ABC, string product, string Release, bool includeInheritedData = false) 
{ 

} 

如何訪問URL此的WebAPI控制器?像正常的控制器?

+0

什麼是路線圖的API? –

回答

0

已經爲的WebAPI控制器及其在AppStart的預定義/ WebApiConfig.cs他們使用像下面訪問API方法。

 config.Routes.MapHttpRoute("DefaultApiWithId", "Api/{controller}/{id}", new { id = RouteParameter.Optional }, new { id = @"\d+" }); 
     config.Routes.MapHttpRoute("DefaultApiWithAction", "Api/{controller}/{action}"); 
     config.Routes.MapHttpRoute("DefaultApiGet", "Api/{controller}", new { action = "Get" }, new { httpMethod = new HttpMethodConstraint(HttpMethod.Get) }); 
     config.Routes.MapHttpRoute("DefaultApiPost", "Api/{controller}", new { action = "Post" }, new { httpMethod = new HttpMethodConstraint(HttpMethod.Post) }); 
1

可以定義爲Web API方法途徑的路徑和名稱。使用該路由可以訪問API控制器操作,如果它很簡單獲取調用並具有匿名訪問權限。

例如:

想這在你的API控制器的方法:

[HttpGet,AllowAnonymous][Route("api/register")] 
public void Register() 
    { 

    } 

你可以像URL訪問:本地主機/ API /從browser.This註冊是一個簡單的例子來用簡單的術語解釋事情。還有很多其他事情涉案取決於各種因素,如安全性,要求等

+0

它通過訪問localhost/Api/controllername/ManExport工作。 無論如何感謝您的回覆。 –