Mockito+Spring4x+TestNG中参数引用问题
使用mockito模拟http请求进行controller层的测试,将contentType设置为MediaType.APPLICATION_JSON并传递json参数时,后端无法参数化接收。经过排查,发现需要将参数前面加上@RequestBody即可。
如果并不想要通过@RequestBody接收(毕竟确实很麻烦,需要进行对象封装),可以将contentType设置为MediaType.APPLICATION_FORM_URLENCODED,然后注意传入的参数需要写成key=value&key=value的形式。
为什么之前写ajax时候传入的是json,springMVC不用参数前加上@RequestBody也可以接收,那是因为ajax内部已经将其进行转换。(本人采坑)
- 以下,摘抄自w3school: