首页 > 解决方案 > Jave HttpClient - JSON 内容未解析 -

问题描述

我正在努力找出 Gson。我有 GET 请求连接,我得到了 200,但 JSON 正文似乎是空的 - 当我可以从其他地方时很好,我确实在内容中看到了 JSON。

Partners 只是一个 String 类来匹配 Partner 对象,其中 PartnersArray 只是这些 Partners 的一个 ArrayList 来匹配 JSON 结构。

public HttpResponse<String> getRequest(String url) throws IOException, InterruptedException{
        
        HttpRequest request = (HttpRequest) HttpRequest.newBuilder().
                uri(URI.create(url)).
                header("accept", "application/json").
                build();
        System.out.println("Request Header : " + request.headers());
        
        HttpResponse<String> response = httpClient.send(request, HttpResponse.BodyHandlers.ofString());
        
        PartnersArray partners = new Gson().fromJson(response.body(), PartnersArray.class);
        
        if (response.statusCode() == 200)
        {
            System.out.println("HttpStatus Good");
            System.out.println(partners.toString());
        }
        
        return response;
        
    }

标签: javahttpgethttpclient

解决方案


通常当 json 结构与类结构不匹配时会发生这种情况。也许您可以在此处添加您在响应中获得的 json 以及 PartnersArray 和 Partner 类。


推荐阅读