• 让Web API支持$format参数的方法


     1 public static class WebApiConfig
     2     {
     3         public static void Register(HttpConfiguration config)
     4         {
     5             // Web API 配置和服务
     6 
     7             // Web API 路由
     8             config.MapHttpAttributeRoutes();
     9 
    10             config.Routes.MapHttpRoute(
    11                 name: "DefaultApi",
    12                 routeTemplate: "api/{controller}/{id}",
    13                 defaults: new { id = RouteParameter.Optional }
    14             );
    15 
    16             config.Routes.MapHttpRoute(
    17                  name: "ActionApi",
    18                  routeTemplate: "{controller}/{action}/{id}",
    19                  defaults: new { id = RouteParameter.Optional }
    20              );
    21 
    22             config.Formatters.JsonFormatter.AddQueryStringMapping("$format", "json", "application/json");
    23             config.Formatters.XmlFormatter.AddQueryStringMapping("$format", "xml", "application/xml");
    24 
    25         }
    26     }

    WebAPI 只使用JSON格式响应

     1  public static class WebApiConfig
     2     {
     3         public static void Register(HttpConfiguration config)
     4         {
     5             // Web API 配置和服务
     6 
     7             // Web API 路由
     8             config.MapHttpAttributeRoutes();
     9 
    10             config.Routes.MapHttpRoute(
    11                 name: "DefaultApi",
    12                 routeTemplate: "api/{controller}/{id}",
    13                 defaults: new { id = RouteParameter.Optional }
    14             );
    15 
    16             config.Routes.MapHttpRoute(
    17                  name: "ActionApi",
    18                  routeTemplate: "{controller}/{action}/{id}",
    19                  defaults: new { id = RouteParameter.Optional }
    20              );
    21 
    22             config.Formatters.XmlFormatter.SupportedMediaTypes.Clear();
    23         }
    24     }

    使用方式
    http://localhost:8081/api/home?$format=json
    http://localhost:8081/api/home?$format=xml

    参考资料:https://code.msdn.microsoft.com/Support-format-in-ASPNET-e3785b2a

    为系统而生,为框架而死,为debug奋斗一辈子; 吃符号的亏,上大小写的当,最后死在需求上。
  • 相关阅读:
    Ray聊天记录
    ServiceFabric极简文档-5.0 Service Fabric有状态与无状态
    ServiceFabric极简文档-5.1 编程模型选择
    Java网络编程学习A轮_08_NIO的Reactor模型
    Java网络编程学习A轮_07_基于Buffer的Socket编程
    Java网络编程学习A轮_06_NIO入门
    Java网络编程学习A轮_05_Socket编程
    Spring IOC 源码简单分析 04
    Spring IOC 源码简单分析 03
    Spring IOC 源码简单分析 02
  • 原文地址:https://www.cnblogs.com/sunxuchu/p/5336131.html
Copyright © 2020-2023  润新知