反序列化JSON请求无法反序列化START_数组令牌中的java.lang.String实例
请帮我做这个: 无法反序列化START_数组令牌中的java.lang.String实例 在[来源:org.springframework.mock.web。DelegatingServletInputStream@2b92e1c6;行:1,列:14](通过引用链:br.com.foca.api.config.jwt.RESTUser[“user_name”]) 我的班级:反序列化JSON请求无法反序列化START_数组令牌中的java.lang.String实例,java,spring-mvc,spring-boot,jwt,Java,Spring Mvc,Spring Boot,Jwt,请帮我做这个: 无法反序列化START_数组令牌中的java.lang.String实例 在[来源:org.springframework.mock.web。DelegatingServletInputStream@2b92e1c6;行:1,列:14](通过引用链:br.com.foca.api.config.jwt.RESTUser[“user_name”]) 我的班级: @Data public class RESTUser { @JsonProperty(value = "user_na
@Data
public class RESTUser {
@JsonProperty(value = "user_name")
private String userName;
private String password;
}
我的请求:
MultiValueMap<String, String> param = new LinkedMultiValueMap<>();
param.add("user_name", "X");
param.add("password", "Y");
String json = new ObjectMapper().writeValueAsString(param);
HttpHeaders header = new HttpHeaders();
header.add("Content-Type", MediaType.APPLICATION_JSON_VALUE);
header.add("Origin", "LocalTest");
ResultActions result = mvc.perform(
MockMvcRequestBuilders.post("/login")
.headers(header)
.content(json)
.accept("application/json;charset=UTF-8"))
.andExpect(status().isOk())
.andExpect(content().contentType("application/json;charset=UTF-8"));
我正在使用jackson操作对象。在请求代码中,尝试创建一个实际的
RESTUser
对象,并调用String json=new ObjectMapper().writeValueAsString(RESTUser)代码>我发现了问题,我更改了行:MultiValueMap param=new LinkedMultiValueMap();要映射param=newhashmap();谢谢你的关注
RESTUser creds = new ObjectMapper().readValue(req.getInputStream(), RESTUser.class);