我正在尝试使用Java(HttpURLConnection和InputStream)使用RESTFUL Web服务。我能够使用BufferedReader打印响应,但它也会返回响应标头,并且格式导致将其转换为Java的问题POJO。
我尝试使用URLConnection,然后检索输入流并将其传递给ObjectMapping(由Jackson提供)
final URL url = new URL("url");
final HttpURLConnection uc = (HttpURLConnection) url.openConnection();
uc.setRequestMethod("GET");
final ObjectMapper objectMapper = new ObjectMapper();
MyData myData = objectMapper.readValue(uc.getInputStream(), MyData.class);
错误消息:“由于输入结束,没有内容要映射\ n”
答案 0 :(得分:0)
在您的代码中,没有显示实际读取数据的位置以及声明和填充output
变量的位置。就像现在的代码一样,从您的休息服务中读取的内容似乎不正确。但是,我建议您不要使用自己的代码来读取其余URL,而是建议使用为您执行此操作的3d派对库。这里有一些建议:Apache Http Client,OK Http client,最后是我最喜欢的-MgntUtils Http Client(由我编写和维护的库),这里是HttpClient javadoc,这是最新的{{ 3}},这里的Maven artifacts for MgntUtils library包含带有源和Javadoc的库本身。选择一些Http客户端并使用该客户端读取内容,然后就可以使用该内容。