From c63f6f96d71836b94ffcfc216a25fb25fd985963 Mon Sep 17 00:00:00 2001 From: MaxKey Date: Fri, 3 Mar 2023 11:07:21 +0800 Subject: [PATCH] RequestTokenUtils --- .../org/maxkey/util/RequestTokenUtils.java | 41 +++++++++++++++++++ 1 file changed, 41 insertions(+) create mode 100644 maxkey-common/src/main/java/org/maxkey/util/RequestTokenUtils.java diff --git a/maxkey-common/src/main/java/org/maxkey/util/RequestTokenUtils.java b/maxkey-common/src/main/java/org/maxkey/util/RequestTokenUtils.java new file mode 100644 index 000000000..792c2c102 --- /dev/null +++ b/maxkey-common/src/main/java/org/maxkey/util/RequestTokenUtils.java @@ -0,0 +1,41 @@ +package org.maxkey.util; + +import javax.servlet.http.HttpServletRequest; + +import org.apache.commons.lang3.StringUtils; + +/** + * 从请求中解析token令牌信息,优先级顺序如下 + *

+ * 1) 参数 access_token
+ * 2) header 的Authorization或者authorization
+ * 3) 参数 token
+ *

+ * + * @author crystal.sea + * + */ + +public class RequestTokenUtils { + + /** + * resolveAccessToken + * + * @param request + * @return access_token + */ + public static String resolveAccessToken(HttpServletRequest request) { + String access_token = request.getParameter("access_token"); + + if(StringUtils.isBlank(access_token)) { + //for header authorization bearer + access_token = AuthorizationHeaderUtils.resolveBearer(request); + } + + if(StringUtils.isBlank(access_token)) { + access_token = request.getParameter("token"); + } + return access_token; + } + +}