|
@@ -1,10 +1,14 @@
|
|
package cn.hfln.framework.gateway.config;
|
|
package cn.hfln.framework.gateway.config;
|
|
|
|
|
|
import cn.dev33.satoken.context.SaHolder;
|
|
import cn.dev33.satoken.context.SaHolder;
|
|
|
|
+import cn.dev33.satoken.error.SaErrorCode;
|
|
|
|
+import cn.dev33.satoken.exception.SaTokenException;
|
|
import cn.dev33.satoken.reactor.filter.SaReactorFilter;
|
|
import cn.dev33.satoken.reactor.filter.SaReactorFilter;
|
|
import cn.dev33.satoken.router.SaRouter;
|
|
import cn.dev33.satoken.router.SaRouter;
|
|
import cn.dev33.satoken.stp.StpUtil;
|
|
import cn.dev33.satoken.stp.StpUtil;
|
|
import cn.dev33.satoken.util.SaResult;
|
|
import cn.dev33.satoken.util.SaResult;
|
|
|
|
+import cn.hfln.framework.dto.ApiResult;
|
|
|
|
+import com.alibaba.fastjson2.JSON;
|
|
import lombok.extern.slf4j.Slf4j;
|
|
import lombok.extern.slf4j.Slf4j;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
import org.springframework.context.annotation.Bean;
|
|
import org.springframework.context.annotation.Bean;
|
|
@@ -62,6 +66,21 @@ public class SaTokenConfigure {
|
|
})
|
|
})
|
|
// 异常处理方法:每次setAuth函数出现异常时进入
|
|
// 异常处理方法:每次setAuth函数出现异常时进入
|
|
.setError(e -> {
|
|
.setError(e -> {
|
|
|
|
+
|
|
|
|
+ if (e instanceof SaTokenException) {
|
|
|
|
+ int code = ((SaTokenException)e).getCode();
|
|
|
|
+ String errMsg = e.getMessage();
|
|
|
|
+// if (SaErrorCode.CODE_11041 == code) {
|
|
|
|
+// errMsg = "当前账户无此权限";
|
|
|
|
+// } else if (SaErrorCode.CODE_11011 == code) {
|
|
|
|
+// errMsg = "当前账户未登录";
|
|
|
|
+// } else if (SaErrorCode.CODE_11014 == code) {
|
|
|
|
+// errMsg = "当前账户已被顶下线,请重新登录";
|
|
|
|
+// }
|
|
|
|
+
|
|
|
|
+ return JSON.toJSONString(ApiResult.failed(String.valueOf(code), errMsg));
|
|
|
|
+ }
|
|
|
|
+
|
|
return SaResult.error(e.getMessage());
|
|
return SaResult.error(e.getMessage());
|
|
})
|
|
})
|
|
;
|
|
;
|