返回自定义结果(@Controller 和 @RestController的区别)

最近边学java和SpringBoot边做一个业余的项目, 一开始用thymeleaf模版,所以每个Controller都用了@Controller注解,后来thymeleaf模版满足不了需求了,就想返回自定义的一个结果类,交给前端自己处理,但是后台明明返回了

返回自定义结果(@Controller 和 @RestController的区别)_第1张图片
屏幕快照 2017-07-12 下午2.42.18.png

但是前端接到的response.data里面却全部是html代码

屏幕快照 2017-07-12 下午2.42.40.png
返回自定义结果(@Controller 和 @RestController的区别)_第2张图片
屏幕快照 2017-07-12 下午2.53.12.png

由于经验不足,没有往@Controller这里想,一开始以为是Vue.js的问题,后来在群里问大神,也没有解决。哎,还得靠自己,后来不小心瞄到了@Controller,突然就开朗了,突然想到了他俩的区别,没想到载到小细节上了,这里再重申一边吧(细节害死):

1.如果用@Controller返回的只能是页面,
2.如果要返回自定义的结果,就要使用@RestController, 或者使用@Controller,同时在方法上添加@ResponseBody注解。

你可能感兴趣的:(返回自定义结果(@Controller 和 @RestController的区别))