webapi 返回不同格式的数据

  1.      //默认返回 json              GlobalConfiguration.Configuration.Formatters.XmlFormatter.SupportedMediaTypes.Clear();

                GlobalConfiguration.Configuration.Formatters.JsonFormatter.MediaTypeMappings.Add(                 new QueryStringMapping("datatype", "json", "application/json"));  

                ////返回格式选择 datatype 可以替换为任何参数               //GlobalConfiguration.Configuration.Formatters.XmlFormatter.MediaTypeMappings.Add(              //    new QueryStringMapping("datatype", "xml", "application/xml")); 

  2. using System.IO;  
  3. /// <summary>  
  4. /// WebApi返回图片  
  5. /// </summary>  
  6. public HttpResponseMessage GetQrCode()  
  7. {  
  8.     var imgPath = @"D:\ITdosCom\Images\itdos.jpg";  
  9.     //从图片中读取byte  
  10.     var imgByte = File.ReadAllBytes(imgPath);  
  11.     //从图片中读取流  
  12.     var imgStream = new MemoryStream(File.ReadAllBytes(imgPath));  
  13.     var resp = new HttpResponseMessage(HttpStatusCode.OK)  
  14.     {  
  15.         Content = new ByteArrayContent(imgByte)  
  16.         //或者  
  17.         //Content = new StreamContent(stream)  
  18.     };  
  19.     resp.Content.Headers.ContentType = new MediaTypeHeaderValue("image/jpg");  
  20.     return resp;  
  21. }  
  22. /// <summary>  
  23. /// WebApi返回json数据  
  24. /// </summary>  
  25. public HttpResponseMessage GetQrCode()  
  26. {  
  27.     var jsonStr = "{\"IsSuccess\":true,\"Data\":\"www.itdos.com\"}";  
  28.     var result = new HttpResponseMessage(HttpStatusCode.OK)  
  29.                     {  
  30.                         Content = new StringContent(jsonStr, Encoding.UTF8, "text/json")  
  31.                     };  
  32.     return result;  
  33. }  
  34. /// <summary>  
  35. /// WebApi返回字符串  
  36. /// </summary>  
  37. public HttpResponseMessage GetQrCode()  
  38. {  
  39.     var str = "IT大师www.itdos.com";  
  40.     var result = new HttpResponseMessage(HttpStatusCode.OK)  
  41.                     {  
  42.                         Content = new StringContent(str, Encoding.UTF8, "text/plain")  
  43.                     };  
  44.     return result;  
  45. }  
posted @ 2016-11-07 09:01  haifeng_0712  阅读(213)  评论(0编辑  收藏  举报