我未能理解为什么这不起作用。我假设它很简单,我可以忽视它。所有其他不使用令牌的其他测试方法都可以正常工作。令牌上目前没有过期,我可以使用Postman。
@Test
public void getUser() throws Exception {
String token = "eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJsd2lsbGlhbXMxNiIsInJvbGVzIjoidXNlciIsImlhdCI6MTUxNDQ0OTgzM30.WKMQ_oPPiDcc6sGtMJ1Y9hlrAAc6U3xQLuEHyAnM1FU";
MvcResult mvcResult = mockMvc.perform(
MockMvcRequestBuilders.get("/api/users/lwilliams16")
.header("authentication", "Bearer " + token))
.andExpect(status().isOk())
.andExpect(content().contentType(MediaType.APPLICATION_JSON))
.andDo(print())
.andReturn();
System.out.println(mvcResult.getResponse().getContentAsString());
}
答案 0 :(得分:0)
我使用的是身份验证而非授权。晚了。此外,正确的响应类型是APPLICATION_JSON_UTF8。
@Test
public void getUser() throws Exception {
String token = "eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJsd2lsbGlhbXMxNiIsInJvbGVzIjoidXNlciIsImlhdCI6MTUxNDQ0OTgzM30.WKMQ_oPPiDcc6sGtMJ1Y9hlrAAc6U3xQLuEHyAnM1FU";
MvcResult mvcResult = mockMvc.perform(
MockMvcRequestBuilders.get("/api/users/lwilliams16")
.header("authorization", "Bearer " + token))
.andExpect(status().isOk())
.andExpect(content().contentType(MediaType.APPLICATION_JSON_UTF8))
.andDo(print())
.andReturn();
System.out.println(mvcResult.getResponse().getContentAsString());
}