Spring RestTemplate 无法转换 json 响应
Spring RestTemplate can not convert json response
我有 url - http://hzhzhz
return json
{
"someField": 3,
"datesField": ["2017-08-19",
"2017-08-20",
"2017-08-26",
"2018-12-30"]
}
我创建模型
@Data
@NoArgsConstructor
private class Response{
private int someField;
private DatesField datesField;
}
@Data
@NoArgsConstructor
private class DatesField{
private List<String> strings;
}
我创造
ResponseforObject = restTemplate.getForObject("http://hzhzhz", Response.class);
我得到错误:
Could not extract response: no suitable HttpMessageConverter found for response type [class mypackeg.Response] and content type [text/html;charset=utf-8]
您的 "http://hzhzhz"
调用 returns HTML 无法转换为 mypackeg.Response class.
可能是 URL 错误或者它产生了错误的内容类型(HTML 而不是预期的 JSON 或 XML)。要修复尝试 return String.class 并检查字符串中的确切内容。
另一个可能的原因是权限被拒绝,returns 访问被拒绝 HTML 页面。
将 http://hzhzhz 端点更改为 return
content type = 'application/json'
如果 http://hzhzhz 是由 spring 制作的,请在请求映射中使用它
produces = "application/json"
如果您使用 spring 控制器,您应该将产品更改为 "application/json"
我有 url - http://hzhzhz
return json
{
"someField": 3,
"datesField": ["2017-08-19",
"2017-08-20",
"2017-08-26",
"2018-12-30"]
}
我创建模型
@Data
@NoArgsConstructor
private class Response{
private int someField;
private DatesField datesField;
}
@Data
@NoArgsConstructor
private class DatesField{
private List<String> strings;
}
我创造
ResponseforObject = restTemplate.getForObject("http://hzhzhz", Response.class);
我得到错误:
Could not extract response: no suitable HttpMessageConverter found for response type [class mypackeg.Response] and content type [text/html;charset=utf-8]
您的 "http://hzhzhz"
调用 returns HTML 无法转换为 mypackeg.Response class.
可能是 URL 错误或者它产生了错误的内容类型(HTML 而不是预期的 JSON 或 XML)。要修复尝试 return String.class 并检查字符串中的确切内容。
另一个可能的原因是权限被拒绝,returns 访问被拒绝 HTML 页面。
将 http://hzhzhz 端点更改为 return
content type = 'application/json'
如果 http://hzhzhz 是由 spring 制作的,请在请求映射中使用它
produces = "application/json"
如果您使用 spring 控制器,您应该将产品更改为 "application/json"