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 { public static String TOKEN = "token"; public static String ACCESS_TOKEN = "access_token"; /** * 从请求中获取token令牌信息,优先级顺序如下 *

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

* * @param request * @return access_token */ public static String resolveAccessToken(HttpServletRequest request) { String access_token = request.getParameter(ACCESS_TOKEN); if(StringUtils.isBlank(access_token)) { access_token = request.getParameter(TOKEN); } if(StringUtils.isBlank(access_token)) { //for header authorization bearer access_token = AuthorizationHeaderUtils.resolveBearer(request); } return access_token; } }