【发布时间】:2021-10-18 09:27:18
【问题描述】:
我有一个将由前端调用的 Spring-Boot 控制器应用程序。 Spring-boot @PostMapping 将接受 XML 和 JSON。我想根据Content-Type调用不同的方法。
有没有办法检查传入的内容类型是什么?
@CrossOrigin(origins = "*")
@RestController
@RequestMapping("/api")
public class MyController {
@PostMapping(value = "/generator", consumes = {"application/json", "application/xml"}, produces = "application/json")
public String generate(@RequestBody String input) {
try {
System.out.println("INPUT CONTENT TYPE : ");
if(contentType == "application/xml")
{
//Call Method-1
}else if(contentType == "application/json"){
//Call Method-2
}
} catch (Exception exception) {
System.out.println(exception.getMessage());
}
}
}
我们可以看到RestController 方法接受XML and JSON。我想检查传入的Content-type 是基于它做出不同决定的需要。谁能给我解释一下怎么做?
请注意: 我知道我可以创建不同的方法来处理 XML 和 JSON,但我想用一个方法来完成,这样既简单又高效。
【问题讨论】:
标签: java json spring spring-boot content-type