2014-03-01 17 views
0

通常,當我在正常的控制器中使用ASP.NET MVC時,我可以訪問返回Json()Content()等方法。Apicontroller - 如何訪問方法,如Json()和內容()

這些方法對於何時返回動作結果很有用。但是,使用API​​控制器時,這些方法似乎不存在。我猜他們住在BaseController中,正常的控制器繼承自?

在使用Apicontroller時,您如何通過簡單的方式返回JSON/XML /類似的東西?

回答

1

ASP.Net的Web API默認返回的Json/XML的內容類型。

客戶端可以通過在api請求中設置所需的accept-header(即(application/xml or application/JSON))來控制他們想要獲得的內容類型。

例如,如果客戶端作出這樣的請求時,API將JSON格式

GET http://localhost:1234/api/products HTTP/1.1 
Host: localhost.:1234 
Accept: application/json 

返回響應。如果像這樣頭客戶化妝請求,API將返回XML格式的響應

GET http://localhost:1234/api/products HTTP/1.1 
Host: localhost.:1234 
Accept: application/xml 
+1

content-type用於指定帖子的類型,accept頭用於優先發送給客戶端的特定類型 –

+0

@LukeMcGregor編輯:) – ssilas777