从 API java 获取 JSON 字符串

Posted

技术标签:

【中文标题】从 API java 获取 JSON 字符串【英文标题】:Get JSON String from API java 【发布时间】:2020-11-10 15:14:38 【问题描述】:

如何通过 Java 中的 API 响应获取字符串 Json? 我正在尝试将它们解析为对象,但我不工作

public class tedst 
    public static void main(String[] args) 
        OkHttpClient client = new OkHttpClient();
        Gson gson = new Gson();
        Request res = new Request.Builder().url("http://api.openweathermap.org/data/2.5/weather?q=Hanoi&APPID=bffca17bcb552b8c8e4f3b82f64cccd2&units=metric").build();
        try 
            Response response = client.newCall(res).execute();
           Data data = gson.fromJson(response.toString(), Data.class);
         catch (IOException e) 
            e.printStackTrace();
        
    

【问题讨论】:

拜托,你能接受我给帮助别人的答案吗? 【参考方案1】:

您的Response 对象应该有一个body() 方法,可以让您检索对您的呼叫作出的响应。

您的代码应如下所示:

try (Response response = client.newCall(res).execute();
     ResponseBody body = response.body()) 
    Data data = gson.fromJson(body.string(), Data.class);
 catch (IOException e) 
    e.printStackTrace();

【讨论】:

你是我的天使。非常感谢

以上是关于从 API java 获取 JSON 字符串的主要内容,如果未能解决你的问题,请参考以下文章

JAVA中json字符串如何转化为map对象,获取数据?

从 php json 编码获取字符串到 android 目标 api23+

Flutter 如何使用 JSON 从 Rest API 获取 List<String> _list 数组字符串

怎样从java后台获取json字符串并转换为json对象输出?

怎样从java后台获取json字符串并转换为json对象输出

怎样从java后台获取json字符串并转换为json对象输出?