不死鸟.亚历山大.狼崽子

不死鸟.亚历山大.狼崽子

1 什么是内容协商

简单说就是服务提供方根据客户端所支持的格式来返回对应的报文,在 Spring 中,REST API 基本上都是以 json 格式进行返回,而如果需要一个接口即支持 json,又支持其他格式,开发和维护多套代码显然是不合理的,而 Spring 又恰好提供了该功能,那便是ContentNegotiation 在 Spring 中,决定一个数据是以 jso还是xml 分别如下:

  • favorPathExtension 后缀模式,例如:xxx.json,xxx.xml
  • favorParameter format模式,例如:xxx?format=json,xxx?format=xml,
  • 通过请求的 Accept 来决定返回的值

2 代码实现

2.1 引入依赖

        <dependency>
            <groupId>com.fasterxml.jackson.dataformat</groupId>
            <artifactId>jackson-dataformat-xml<
06-04 03:04