IDEA中的EasyApi插件简直神器,直接导出api信息到Yapi,再也不用写接口了
本人在使用过程中遇到一点问题,一时脑子没反应过来,给同样没反应过来的兄弟带个路。
我在导出接口的时候,出现返回的类型解析不出来。
因为是使用自己定义的响应体,类似这样:
package com.jswdwsx.common.response;
import java.io.Serializable;
/**
* 返回封装基本对象
*/
@Data
public class BaseResponse implements Serializable {
private static final long serialVersionUID = 1L;
/*是否成功*/
private Boolean success;
/*错误编码*/
private String errorCode;
/*错误信息*/
private String errorMsg;
/*请求的唯一主键*/
private String requestId;
/*数据体*/
private Object data;
}
所以生成的接口没有data部分的内容,只展示一个object对象,其中的字段都没有。
但是另一个类似项目里用导出却有内容:
记过对比发现问题出在响应体对象中,返回的数据定义为了Object。如果想要导出的接口信息包含data里的字段,就不能使用Object,而要使用泛型,修改BaseResponse如下:
package com.jswdwsx.common.response;
import java.io.Serializable;
/**
* 返回封装基本对象
*/
@Data
public class BaseResponse<T> implements Serializable {
private static final long serialVersionUID = 1L;
/*是否成功*/
private Boolean success;
/*错误编码*/
private String errorCode;
/*错误信息*/
private String errorMsg;
/*请求的唯一主键*/
private String requestId;
/*数据体*/
private T data;
}
道理很简单,不多解释了,给一下子脑子没转过来的朋友指个路