自定义网关返回数据格式

说明

  • 本文是说明基于soul网关返回自定义的数据个数。
  • 网关需要统一的返回格式,而每个公司都有自己定义的一套,所以需要对次进行扩展。

默认实现

  • 默认的实现为 org.dromara.soul.plugin.api.result.DefaultSoulResult

  • 返回的数据格式如下:

  1. public class SoulDefaultEntity implements Serializable {
  2. private static final long serialVersionUID = -2792556188993845048L;
  3. private Integer code;
  4. private String message;
  5. private Object data;
  6. }
  • 返回的json 格式如下:
  1. {
  2. "code": -100, //返回码,
  3. "message": "您的参数错误,请检查相关文档!", //提示字段
  4. "data": null // 具体的数据
  5. }

扩展

  • 新增一个类 A 实现 org.dromara.soul.plugin.api.result.SoulResult
  1. public interface SoulResult<T> {
  2. /**
  3. * Success t.
  4. *
  5. * @param code the code
  6. * @param message the message
  7. * @param object the object
  8. * @return the t
  9. */
  10. T success(int code, String message, Object object);
  11. /**
  12. * Error t.
  13. *
  14. * @param code the code
  15. * @param message the message
  16. * @param object the object
  17. * @return the t
  18. */
  19. T error(int code, String message, Object object);
  20. }
  • 其他 泛型 T 为你自定义的数据格式,返回它就好

  • 把你新增的实现类注册成为spring的bean,如下

  1. @Bean
  2. public SoulResult a() {
  3. return new A();
  4. }