Spring-boot 应用程序如何知道输入是 XML 或 JSON 有效载荷的形式?
How Spring-boot application will know that input is in the form of XML or JSON payload?
当我们从我们自己的微服务中的任何其他 Service/API 获取输入时,我们的 spring-boot 应用程序将如何知道输入类型是 XML 类型或 JSON 在内部输入 payload。和。如果我想从 XML 转换为 JSON 或相反,它获得实际类型的有效载荷作为输入后,它将如何工作,它是否具有与下面相同的本机方法;
public static String xml= "<?xml version=\"1.0\" ?><root><test attribute=\"text1\">XML DATA</test><test attribute=\"text2\">DATA DATA</test></root>";
JSONObject json = XML.toJSONObject(xml);
String jsonString = json.toString(4);
System.out.println(jsonString);
//Convert from XML to JSON
并且在从 XML 转换为 JSON 时,
JSONObject jsonObject = new JSONObject(jsonString);
String xml = "<?xml version=\"1.0\" encoding=\"ISO-8859-15\"?>\n<"+root+">" + XML.toString(jsonObject) + "</"+root+">";
或者有其他转换方式吗?
我的查询很简单,如何知道输入类型是什么以及我们的应用程序将如何识别它?
您可以读取内容类型请求 header 作为控制器 class 映射方法中的参数:
public class APIController {
@GetMapping(
public String getMethod(@RequestBody String body, @RequestHeader("Content-type") String contentType) {
}
}
当我们从我们自己的微服务中的任何其他 Service/API 获取输入时,我们的 spring-boot 应用程序将如何知道输入类型是 XML 类型或 JSON 在内部输入 payload。和。如果我想从 XML 转换为 JSON 或相反,它获得实际类型的有效载荷作为输入后,它将如何工作,它是否具有与下面相同的本机方法;
public static String xml= "<?xml version=\"1.0\" ?><root><test attribute=\"text1\">XML DATA</test><test attribute=\"text2\">DATA DATA</test></root>";
JSONObject json = XML.toJSONObject(xml);
String jsonString = json.toString(4);
System.out.println(jsonString);
//Convert from XML to JSON
并且在从 XML 转换为 JSON 时,
JSONObject jsonObject = new JSONObject(jsonString);
String xml = "<?xml version=\"1.0\" encoding=\"ISO-8859-15\"?>\n<"+root+">" + XML.toString(jsonObject) + "</"+root+">";
或者有其他转换方式吗?
我的查询很简单,如何知道输入类型是什么以及我们的应用程序将如何识别它?
您可以读取内容类型请求 header 作为控制器 class 映射方法中的参数:
public class APIController {
@GetMapping(
public String getMethod(@RequestBody String body, @RequestHeader("Content-type") String contentType) {
}
}