Untitled
unknown
plain_text
a year ago
1.0 kB
4
Indexable
@WebFilter(urlPatterns = ["/v1/sites/categories/*"]) class ApiKeyFilter( @Value("\${config.api.key}") private val configApiKey: String, private val X_API_KEY: String = "X-Api-Key" ) : Filter { override fun doFilter( request: ServletRequest, response: ServletResponse, chain: FilterChain ) { val key = (request as HttpServletRequest).getHeader(X_API_KEY) if (StringUtils.hasText(key) && configApiKey == key) { chain.doFilter(request, response) return } else { response.resetBuffer() response.contentType = MediaType.APPLICATION_JSON_VALUE response.outputStream.print( ObjectMapper().writeValueAsString( ErrorResponse( code = "401", message = HttpStatus.UNAUTHORIZED.name, ) ) ) response.flushBuffer() } } }
Editor is loading...
Leave a Comment