消息队列中报微服务异常 issues/I4977W

This commit is contained in:
zhangdaiscott
2021-09-14 16:43:14 +08:00
parent a7ce3388c7
commit 1364ba6f9f
5 changed files with 96 additions and 10 deletions

View File

@ -0,0 +1,43 @@
package org.jeecg.common.config.mqtoken;
import javax.servlet.*;
import javax.servlet.http.HttpServletRequest;
import java.io.IOException;
/**
* 存放token到上下文供队列调用feign使用
* @author zyf
*/
public class TransmitUserTokenFilter implements Filter {
private static String X_ACCESS_TOKEN="X-Access-Token";
public TransmitUserTokenFilter() {
}
@Override
public void init(FilterConfig filterConfig) throws ServletException {
}
@Override
public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {
this.initUserInfo((HttpServletRequest) request);
chain.doFilter(request, response);
}
private void initUserInfo(HttpServletRequest request) {
String token = request.getHeader(X_ACCESS_TOKEN);
if (token!=null) {
try {
//将token放入上下文中
UserTokenContext.setToken(token);
} catch (Exception e) {
}
}
}
@Override
public void destroy() {
}
}

View File

@ -0,0 +1,22 @@
package org.jeecg.common.config.mqtoken;
/**
* 用户token上下文
* @author zyf
*/
public class UserTokenContext {
private static ThreadLocal<String> userToken = new ThreadLocal<String>();
public UserTokenContext() {
}
public static String getToken(){
return userToken.get();
}
public static void setToken(String token){
userToken.set(token);
}
}