优化访问接口报错Server internal error

This commit is contained in:
2026-03-06 10:33:44 +08:00
parent 7e8867ed12
commit 768cf5137c
6 changed files with 96 additions and 68 deletions

View File

@@ -45,16 +45,20 @@ class BaseController extends OpenController
*/
protected function init(): void
{
// 登录模式赋值
// 登录模式赋值(仅当 check_admin 有效时赋值,避免登录接口等未带 token 时访问 null 导致报错)
$isLogin = request()->header('check_login', false);
if ($isLogin) {
$result = request()->header('check_admin');
$this->adminId = $result['id'];
$this->adminName = $result['username'];
$this->adminInfo = UserInfoCache::getUserInfo($result['id']);
$result = request()->header('check_admin');
if ($isLogin && $result !== null && (is_array($result) || is_object($result))) {
$arr = is_array($result) ? $result : (array) $result;
$adminId = $arr['id'] ?? null;
if ($adminId !== null) {
$this->adminId = (int) $adminId;
$this->adminName = $arr['username'] ?? '';
$this->adminInfo = UserInfoCache::getUserInfo($adminId);
// 用户数据传递给逻辑层
$this->logic && $this->logic->init($this->adminInfo);
// 用户数据传递给逻辑层
$this->logic && $this->logic->init($this->adminInfo);
}
}
}