이지우 - e배움터 연동로그인 CORS 필터 처리 수정

This commit is contained in:
jiwoo 2023-10-13 11:54:23 +09:00
parent b803c7f38c
commit 920c426931
3 changed files with 62 additions and 6 deletions

View File

@ -67,9 +67,9 @@ public class APILoginContoller {
* @throws Exception
*/
@RequestMapping(value = "/web/chkloginKeyForOffedu.do")
public String loginKeyChkForOffedu(@RequestBody Map<String, String> paramRequest, RedirectAttributes redirectAttributes, HttpServletRequest request, HttpServletResponse response,HttpSession session) throws Exception {
String userId = paramRequest.get("user_id");
String key = paramRequest.get("key");
public String loginKeyChkForOffedu(RedirectAttributes redirectAttributes, HttpServletRequest request, HttpServletResponse response,HttpSession session) throws Exception {
String userId = request.getParameter("user_id");
String key = request.getParameter("key");
//String returnUrl = paramRequest.get("returnUrl"); //e-배움터 문의결과 returnUrl 컨트롤은 불가능하다고
String returnUrl = "";

View File

@ -0,0 +1,47 @@
package kcc.let.uat.uia.web;
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;
import org.springframework.stereotype.Component;
/**
* e-배움터와 연동하여 로그인을 처리하는 컨트롤러 클래스
*
* @author 이지우
* @since 2023.08.31
* @version 1.0
* @see
*/
@Component
public class SimpleCORSFilter implements Filter {
public void doFilter(ServletRequest req, ServletResponse res, FilterChain chain)
throws IOException, ServletException {
HttpServletResponse response = (HttpServletResponse) res;
response.setHeader("Access-Control-Allow-Methods", "POST, GET, OPTIONS, DELETE");
response.setHeader("Access-Control-Max-Age", "3600");
response.setHeader("Access-Control-Allow-Headers", "Content-Type, Accept, X-Requested-With, remember-me");
response.setHeader("Access-Control-Allow-Origin", "*");
//response.setHeader("Access-Control-Allow-Origin", "http://services.arcgisonline.com");
chain.doFilter(req, res);
}
public void init(FilterConfig filterConfig) {
}
public void destroy() {
}
}

View File

@ -20,7 +20,7 @@
</filter-mapping>
<!-- CORS -->
<filter>
<!-- <filter>
<filter-name>CORS</filter-name>
<filter-class>com.thetransactioncompany.cors.CORSFilter</filter-class>
<init-param>
@ -72,7 +72,7 @@
<param-value>Access-Control-Allow-Origin,Access-Control-Allow-Credentials</param-value>
</init-param>
<init-param>
<!-- 쿠키 통신을 안하는데 이걸 true로 하면 4XX 서버 에러가 뜬다 -->
쿠키 통신을 안하는데 이걸 true로 하면 4XX 서버 에러가 뜬다
<param-name>cors.support.credentials</param-name>
<param-value>false</param-value>
</init-param>
@ -84,7 +84,7 @@
<filter-mapping>
<filter-name>CorsFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
</filter-mapping> -->
<!-- 템플릿 소스에서는 아래의 필터사용 대신 JSP 출력시 <c:out> 태그를 사용하는 것을 기본정책으로 한다 -->
<!-- egovframework.rte.ptl.mvc.filter.HTMLTagFilter kcc.com.cmm.filter.HTMLTagFilter-->
@ -98,6 +98,15 @@
<url-pattern>*.do</url-pattern>
</filter-mapping>
-->
<filter>
<filter-name>cors</filter-name>
<filter-class>kcc.let.uat.uia.web.SimpleCORSFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>cors</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<!-- security start -->
<filter>