java - 对于 InputStream 类型,方法 readAllBytes() 未定义
问题描述
我无法摆脱 InputStream 错误类型的 readAllBytes() 方法未定义。我认为这是由于我使用的版本引起的?JDK合规性1.8 请指教谢谢。
if (http.getResponseCode() == 200) {
ObjectMapper mapper = new ObjectMapper();
try (InputStream inputStream = http.getInputStream()) {
String jsonContent = new String(inputStream.readAllBytes(), StandardCharsets.UTF_8);
JsonNode node = mapper.readTree(jsonContent);
String Stytch_user_id = node.get("user_id").textValue();
Object[] objects = getUserLogin(Stytch_user_id, "P0002","123456789");
}
} else {
System.out.println("failed");
}
解决方案
使用readTree(Reader r)
重载方法让 Jackson 为您读取流:
JsonNode node;
try (Reader in = new InputStreamReader(http.getInputStream(), StandardCharsets.UTF_8)) {
ObjectMapper mapper = new ObjectMapper();
node = mapper.readTree(in);
}
String Stytch_user_id = node.get("user_id").textValue();
Object[] objects = getUserLogin(Stytch_user_id, "P0002","123456789");
推荐阅读
- android - 在加载活动之前显示权限
- python - 根据多个条件替换熊猫数据框中的值
- python - 你如何将一个参数的 2 个输入加在一起?
- php - Rest API单项-json格式问题
- json - 深度嵌套 obj 的 Normalizr 用法
- java - 如何避免在使用 Maps 时重复使用 put() 方法?
- c# - 为什么 GenerateFunctions 找不到 System.Runtime, Version=4.2.1.0 并抛出 FileNotFoundException)?
- ansible - Jinja2 语法错误:预期标记“打印语句结束”
- reactjs - Redux 未采取行动
- tensorflow - 张量流中的常规模型检查点和保存的模型有什么区别?