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;
|
}
|
}
|