从URL到JSON再到字符串(JAVA)

从URL到JSON再到字符串(JAVA),java,json,Java,Json,想知道我下一步要做什么 我已经打开了这个流,对它进行了缓冲,但我真的不知道如何使用BufferedReader并向我的方法“createFacebookCoverObject”发送一个要分析的字符串。谢谢你的帮助 public void testCreateFavebookCoverObject() throws Exception { System.out.println("createFavebookCoverObject"); String url = "h

想知道我下一步要做什么

我已经打开了这个流,对它进行了缓冲,但我真的不知道如何使用BufferedReader并向我的方法“createFacebookCoverObject”发送一个要分析的字符串。谢谢你的帮助

        public void testCreateFavebookCoverObject() throws Exception {
    System.out.println("createFavebookCoverObject");
    String url = "https://graph.facebook.com/19292868552/";
    InputStream is = new URL(url).openStream();
    BufferedReader rd = new BufferedReader(new InputStreamReader(is, Charset.forName("UTF-8")));
    FacebookCover instance = new FacebookCover();
    FacebookCover result = instance.createFacebookCoverObject(url);//this is where I get stuck
}

BufferedReader具有读取方法(我认为是readLine),这些方法将以字符串形式返回输入流。您可以调用并使用它来获取整个响应。然而,这可能不是你想要的。为什么?因为响应将包含HTTP头和正文。假设您只对主体感兴趣,您可能会在主体中找到JSON字符串

我建议使用HTTP API为您解析响应。几个选项包括:

  • Apache HTTP客户端-注意这是第三方
  • Java的HTTPURLConnection应该可以做到这一点。以下帖子包含示例代码:

  • 您想对来自
    缓冲读取器的输入执行什么操作?你知道这个输入是什么格式的吗?我只是想从站点中提取JSON,不带HTML。很可能响应只包含JSON而不包含HTML。但是,响应仍然必须符合HTTP规范。这意味着原始响应数据包含您需要解析的HTTP头信息上面说我不能传递参数,但很明显我也应该可以。@TheCrownedPixel确切的错误消息是什么?您使用的是哪个版本的HTTPURLConnection?