Spring @RestController获取请求内容类型以响应json或html

乔纳坦·涅托(Jonatan Nieto)

如何获取请求的Content-Type值?我们需要它来打印json响应或HTML respone。我的代码是这样的:

 @RestController
public class GestorController {
    @RequestMapping(value="/gestores", method = RequestMethod.GET)  
    public Object gestoresHtml(@RequestParam(value="name", required=false, defaultValue="sh14") String name) throws Exception {
        String json = "prueba json";

        String contentType = ?????

        if(contentType.equals("application/json")){
            return json;
        }else{
            ModelAndView mav = new ModelAndView();
            mav.setViewName("gestores");
            mav.addObject("name", name);
            return mav;
        }
    }
}

谢谢大家

尼古拉·鲁塞夫(Nikolay Rusev)

Content-Type 是一个请求标头,您可以使用以下代码:

    @RequestMapping("/display")
    public void display(@RequestHeader("Content-Type") String contentType)  {}

参见spring的@RequestHeader 文档

您无需手动执行此操作。您需要的是Content negotiation其中返回的响应类型将满足您的需求。看到这篇文章

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

Spring RestController POST 400错误请求

谁在Spring MVC中设置响应内容类型(@ResponseBody)

Spring RestController返回错误的内容类型

Spring控制器获取请求/响应

使用pebble模板在Spring MVC中获取Json响应

如何从Spring WebClient获取响应json

Spring Boot-postForEntity():响应的内容类型是什么?

Java Spring中POST请求@ManyToOne关系的JSON内容

Spring RestController POST接受基本的HTML表单

Spring Boot RestController:拦截传入的请求

无法从Spring RestController获取POST数据

在Spring Framework RestTemplate中将请求标头的内容类型设置为json

从Spring控制器返回空JSON以获取无效响应

Spring Boot RestController不返回JSON数据

Spring @RestController没有设置响应的cookie

Spring MVC(4.3.3)-RestController使用直接字段访问获取请求参数

对Spring RestController的React + Axios双POST请求(也在获取中,似乎不是选项)

Spring响应式WebClient GET JSON响应,内容类型为“ text / plain; charset = UTF-8”

假设Spring MVC控制器中JSON的内容类型

Spring Android REST模板使用内容类型text / html解析JSON数据

Spring 4 RestController JSON:根据请求“ accept”标头不可接受的特征

如何使用Spring 3管理JSON格式的请求和响应

如何获取Spring @RestController来接受JSON格式而不是www-form-urlencoded的参数?

如何使用Spring RestController返回FileSystemResource或json?

如何从经过验证的 Spring RestController 获取多个缺失请求参数的详细信息?

从 Spring RestController 服务到 Html

Spring boot 获取请求参数

Spring Boot @RestController 无法自动将响应转换为 JSON

Spring Rest Docs json 请求和响应格式