- TokenCheckFilter.java
package org.blog.test.filter; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; import com.netflix.zuul.ZuulFilter; import com.netflix.zuul.context.RequestContext; import lombok.extern.slf4j.Slf4j; @Component @Slf4j public class TokenCheckFilter extends ZuulFilter { @Override public String filterType() { return "pre"; } @Override public int filterOrder() { return 8; } public boolean shouldFilter() { RequestContext ctx = RequestContext.getCurrentContext(); String tokenHeader = ctx.getRequest().getHeader("X-IOT-TOKEN"); if (tokenHeader == null) { return true; } return false; } public Object run() { sendFailedResponse("fail", 401); return null; } private void sendFailedResponse(String body, int code) { log.debug("Reporting error (" + code + "): " + body); RequestContext ctx = RequestContext.getCurrentContext(); ctx.setResponseStatusCode(code); if (ctx.getResponseBody() == null) { ctx.setResponseBody(body); ctx.setSendZuulResponse(false); } } }
댓글 없음 :
댓글 쓰기