参数包装
>s 有时候后端框架会将真实的返回类型进行封装,或者在拦截器统一处理,这样就会导致扫描接口的时候实际上只是数据字段,并不是整个返回类型,因此easyapi提供了通过页面来配置真实数据类型的操作。
我们的代码是这样的,接口返回User类型
```java
@RestController
public class PacageController {
//测试包装
@RequestMapping("/packageUser")
public User packageUser(){
User u = new User();
u.setName("测试名称");
u.setAge(12);
return u;
}
}
```
但是,我们用了拦截器将返回值再次封装,这很合理,因为杂乱无章的返回值会让前端对到吐血
```java
@RestControllerAdvice
public class MyResponseAdvice implements ResponseBodyAdvice {
@Override
public boolean supports(MethodParameter methodParameter, Class aClass) {
return true;
}
@Override
public Object beforeBodyWrite(Object o, MethodParameter methodParameter, MediaType mediaType, Class aClass, ServerHttpRequest serverHttpRequest, ServerHttpResponse serverHttpResponse) {
if(Result.class.isAssignableFrom(o.getClass())){
return o;
}
return Result.success(o);
}
}
```
咱们的页面是这样的,并没有包装信息,当然通过**easyapi提供的拦截器**可以做到返回真实类型,但咱们本篇介绍另外一种方式

点击查看示例

模拟测试返回

这就产生了不一致,对接人会很懵逼,所以此时我们只需要在**右上角设置**中添加包装即可,我们**开启响应参数包装**,并添加包装字段,将**data**字段设为**包装字段**(因为后端真实数据字段叫data)

此时我们还需要将该**接口详情**中的包装开启(这个状态完全可以通过**easyapi拦截器**去按需配置),两个开启可以仅让指定接口包装

接下来再看接口响应示例,就会发现已经和真实返回类型一致了
