package com.vincent.rsf.openApi.security.utils; import com.vincent.rsf.openApi.entity.constant.Constants; import com.vincent.rsf.openApi.entity.app.App; import javax.servlet.http.HttpServletRequest; /** * 认证工具类 * * 提供认证相关的通用功能 * * @author vincent * @since 2026-01-05 */ public class AuthUtils { /** * 从请求中获取AppId * * @param request HTTP请求 * @return AppId */ public static String getAppId(HttpServletRequest request) { // 优先从请求属性中获取(认证过滤器设置的) String appId = (String) request.getAttribute(Constants.REQUEST_ATTR_APP_ID); if (appId != null) { return appId; } // 从请求头获取 return request.getHeader(Constants.HEADER_APP_ID); } /** * 从请求中获取App信息 * * @param request HTTP请求 * @return App信息 */ public static App getAppInfo(HttpServletRequest request) { return (App) request.getAttribute(Constants.REQUEST_ATTR_APP_INFO); } /** * 检查请求是否已通过App认证 * * @param request HTTP请求 * @return 是否已认证 */ public static boolean isAuthenticated(HttpServletRequest request) { return getAppId(request) != null; } }