티스토리 뷰
CORS 란 간단히 말해 서로 다른 도메인간 통신을 하는것을 승인하거나 차단하는 것.
차단이 되어 있을때는 여러가지 방법( eg. jsonp, proxy, 웹서버설정 등)으로 해결할수 있지만 그중 filter를 이용해서 해결하는 방법을 써본다.
CORSFilter.java
import java.io.IOException;
import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.http.HttpServletResponse;
public class CORSFilter implements Filter{
public void doFilter(ServletRequest req, ServletResponse res, FilterChain chain) throws IOException, ServletException {
HttpServletResponse response = (HttpServletResponse) res;
response.setHeader("Access-Control-Allow-Origin", "*");
response.setHeader("Access-Control-Allow-Headers", "x-requested-with, origin, content-type, accept");
response.setHeader("Access-Control-Allow-Methods", "POST,GET,OPTIONS,DELETE");
response.setHeader("Access-Control-Max-Age", "3600");
chain.doFilter(req, response);
}
public void init(FilterConfig arg0) throws ServletException {}
public void destroy() {}
}
web.xml
<filter>
<filter-name>CORS</filter-name>
<filter-class>oingdaddy.CORSFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>CORS</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
'Lang > Java' 카테고리의 다른 글
JWT payload (claims, body) 부 암호화 및 복호화 방법 (0) | 2020.12.23 |
---|---|
CSV 파일 Univocity Parsers 이용해 간단히 파싱하기 (0) | 2020.10.19 |
Client IP IPv4 형식으로 획득하는 방법 (0) | 2020.06.12 |
Maven 프로젝트 JDK 8 에서 JDK 11로 migration (2) | 2020.06.04 |
java.awt.HeadlessException : no x11 display variable was set 오류가 발생할 때 해결방법 (0) | 2020.05.07 |
댓글