其他分享
首页 > 其他分享> > WebApi 内容协商 简单区分JSON 和 Xml

WebApi 内容协商 简单区分JSON 和 Xml

作者:互联网

Accept:响应可接收的媒体类型,如"application/json"、"application/xml",或者自定义媒体类型,如"application/vnd.example+xml"。

 

当我们希望接收到的是JSON时

private void button2_Click(object sender, EventArgs e)
        {
            HttpWebRequest request=(HttpWebRequest) WebRequest.Create("http://localhost:20137/api/Demo?Name=张三&Gender=M&age=22");
            request.Method = "GET";
            request.Accept = "application/json"

            using (HttpWebResponse response = (HttpWebResponse)request.GetResponse())
            {


                using (StreamReader reader = new StreamReader(response.GetResponseStream()))
                {
                    string result = reader.ReadToEnd();
                    this.textBox1.Text = result;
                }
            }
        }
public IHttpActionResult Get([FromUri]Person person)
        {
            return Ok(person);
        }

返回  {"Name":"张三","Gender":"M","Age":22}

当我们希望返回的是XML时

private void button2_Click(object sender, EventArgs e)
        {
            HttpWebRequest request=(HttpWebRequest) WebRequest.Create("http://localhost:20137/api/Demo?Name=张三&Gender=M&age=22");
            request.Method = "GET";
            request.Accept = "application/xml";

            using (HttpWebResponse response = (HttpWebResponse)request.GetResponse())
            {


                using (StreamReader reader = new StreamReader(response.GetResponseStream()))
                {
                    string result = reader.ReadToEnd();
                    this.textBox1.Text = result;
                }

              
            }
        }
public IHttpActionResult Get([FromUri]Person person)
        {
            return Ok(person);
        }

返回

<Person xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/WebApi.Models">
<Age>22</Age>
<Gender>M</Gender>
<Name>张三</Name>
</Person>

 

  

  

 

标签:WebApi,Xml,HttpWebResponse,request,application,JSON,result,HttpWebRequest,Stream
来源: https://www.cnblogs.com/JerryZhang320/p/15527110.html