[Web API] Client 指定请求及响应格式(xml/json)

 

Web API 支持的格式请参考

http://www.api/overview/formats-and-model-binding

本篇则要演练xml/json

回应 Get

定义 Header:Content-Type 定义 QueryString

请求 Post

POST json 数据 POST xml 数据

 

回应 Get

定义 Header:Content-Type

测试工具:本来想用 postman 但是设定 Content-Type 一直无法成功,尝试一段时间便改用 fiddler

指定 json:application/json

指定 xml:application/xml

[[WEB API] CLIENT 指定请求及回应格式(XML/JSON)]

 

观察回传格式

[[WEB API] CLIENT 指定请求及回应格式(XML/JSON)]

 

 

定义 QueryString

在 WebApiConfig.cs 的 Register 方法加上

config.Formatters.JsonFormatter.AddQueryStringMapping("$format", "json", "application/json");
config.Formatters.XmlFormatter.AddQueryStringMapping("$format", "xml", "application/xml"); 

在网址列加上 ?$format=xml,便可以指定回传格式

[[WEB API] CLIENT 指定请求及回应格式(XML/JSON)]

参考:http://code.msdn.microsoft.com/Support-format-in-ASPNET-e3785b2a

请求 Post

POST json 数据

{
"ISBN":"111","AuthiorName":"空","BookName":"空","Category":"空","Price":1
}

[[WEB API] CLIENT 指定请求及回应格式(XML/JSON)]

 

回传结果

[[WEB API] CLIENT 指定请求及回应格式(XML/JSON)]

 

POST Xml

<Product <AuthiorName>周家安</AuthiorName>
<BookName>Windows Phone8开发技巧与案例精解</BookName>
<Category>.NET</Category>
<ISBN>9787111412304</ISBN>
<Price>69</Price>
</Product>

步骤如下:

[[WEB API] CLIENT 指定请求及回应格式(XML/JSON)]

 

回传结果

[[WEB API] CLIENT 指定请求及回应格式(XML/JSON)]

 

相关文章: