You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用Java解析RapidAPI返回的Relaxed JSON格式响应数据

响应示例图
补充响应示例图

Relaxed JSON(无引号字段名)Java解析方案

以下两种主流JSON解析库都支持该类格式解析:

方案1:Jackson库实现(推荐)

Jackson原生内置无引号字段名解析支持,仅需开启对应配置即可:

  1. 引入Maven依赖
<dependency>
    <groupId>com.fasterxml.jackson.core</groupId>
    <artifactId>jackson-databind</artifactId>
    <version>2.15.2</version>
</dependency>
  1. 解析代码示例
import com.fasterxml.jackson.databind.DeserializationFeature;
import com.fasterxml.jackson.databind.ObjectMapper;

public class RelaxedJsonParser {
    public static void main(String[] args) throws Exception {
        // 初始化解析器并开启宽松配置
        ObjectMapper mapper = new ObjectMapper();
        // 核心配置:允许无引号的字段名称
        mapper.enable(DeserializationFeature.ALLOW_UNQUOTED_FIELD_NAMES);
        // 可选扩展配置:适配更多非标准JSON特性
        mapper.enable(DeserializationFeature.ALLOW_SINGLE_QUOTES);
        mapper.enable(DeserializationFeature.ALLOW_TRAILING_COMMA);

        // 直接解析Relaxed JSON字符串
        String jsonStr = "{name: \"测试数据\", status: 200, data: []}";
        // 可替换为自定义的实体类接收解析结果
        Object result = mapper.readValue(jsonStr, Object.class);
    }
}

方案2:Gson库实现

Gson开启宽松解析模式后也可解析无引号字段名的JSON格式:

  1. 引入Maven依赖
<dependency>
    <groupId>com.google.code.gson</groupId>
    <artifactId>gson</artifactId>
    <version>2.10.1</version>
</dependency>
  1. 解析代码示例
import com.google.gson.Gson;
import com.google.gson.GsonBuilder;

public class RelaxedJsonParser {
    public static void main(String[] args) {
        // 初始化解析器并开启宽松模式
        Gson gson = new GsonBuilder()
                .setLenient()
                .create();

        // 解析Relaxed JSON字符串
        String jsonStr = "{name: \"测试数据\", status: 200, data: []}";
        // 可替换为自定义的实体类接收解析结果
        Object result = gson.fromJson(jsonStr, Object.class);
    }
}

内容的提问来源于stack exchange,提问作者Maraoui Abdallah

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.04 07:51:00