进行一些挖掘之后,我发现该
HTTPRequestAdapter.parseRequest()方法与MockMVC发送请求的方式有关。具体来说,由MockMVC发送的请求在请求中的名称中不包含标头
host。
HTTPRequestAdapter需要该标头,并且不考虑它可以为null的事实,因此它生成
NullPointerException。
我用以下代码解决了这个问题:
mockMvc.perform(get("/validation-success") .header("host", "localhost:80")) .andExpect(status().isOk());该
host头将不为空,你的测试应该通过。



