diff --git a/blade-auth/src/main/java/org/springblade/auth/controller/AuthController.java b/blade-auth/src/main/java/org/springblade/auth/controller/AuthController.java index 0da7db3..d82f086 100644 --- a/blade-auth/src/main/java/org/springblade/auth/controller/AuthController.java +++ b/blade-auth/src/main/java/org/springblade/auth/controller/AuthController.java @@ -58,7 +58,7 @@ public class AuthController { ITokenGranter granter = TokenGranterBuilder.getGranter(grantType); UserInfo userInfo = granter.grant(tokenParameter); - if (userInfo == null || userInfo.getUser() == null) { + if (userInfo == null || userInfo.getUser() == null || userInfo.getUser().getId() == null) { return R.fail(TokenUtil.USER_NOT_FOUND); } diff --git a/blade-service-api/blade-user-api/src/main/java/org/springblade/system/user/feign/IUserClient.java b/blade-service-api/blade-user-api/src/main/java/org/springblade/system/user/feign/IUserClient.java index 704c9b4..162abe9 100644 --- a/blade-service-api/blade-user-api/src/main/java/org/springblade/system/user/feign/IUserClient.java +++ b/blade-service-api/blade-user-api/src/main/java/org/springblade/system/user/feign/IUserClient.java @@ -29,7 +29,8 @@ import org.springframework.web.bind.annotation.RequestParam; * @author Chill */ @FeignClient( - value = AppConstant.APPLICATION_USER_NAME + value = AppConstant.APPLICATION_USER_NAME, + fallback = IUserClientFallback.class ) public interface IUserClient { diff --git a/blade-service-api/blade-user-api/src/main/java/org/springblade/system/user/feign/IUserClientFallback.java b/blade-service-api/blade-user-api/src/main/java/org/springblade/system/user/feign/IUserClientFallback.java new file mode 100644 index 0000000..f7a8d10 --- /dev/null +++ b/blade-service-api/blade-user-api/src/main/java/org/springblade/system/user/feign/IUserClientFallback.java @@ -0,0 +1,39 @@ +/** + * Copyright (c) 2018-2028, Chill Zhuang 庄骞 (smallchill@163.com). + *

+ * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + *

+ * http://www.apache.org/licenses/LICENSE-2.0 + *

+ * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.springblade.system.user.feign; + +import org.springblade.core.tool.api.R; +import org.springblade.system.user.entity.UserInfo; +import org.springframework.stereotype.Component; + +/** + * Feign失败配置 + * + * @author Chill + */ +@Component +public class IUserClientFallback implements IUserClient { + + @Override + public R userInfo(Long userId) { + return R.fail("未获取到账号信息"); + } + + @Override + public R userInfo(String tenantCode, String account, String password) { + return R.fail("未获取到账号信息"); + } +}