1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980 |
- package com.its.op.security;
- import com.its.op.security.interceptor.ApiInterceptor;
- import com.its.op.security.interceptor.LoggerInterceptor;
- import com.its.op.security.interceptor.SessionTimerInterceptor;
- import com.its.op.security.interceptor.UserInterceptor;
- import lombok.AllArgsConstructor;
- import org.springframework.context.annotation.Configuration;
- import org.springframework.web.servlet.config.annotation.CorsRegistry;
- import org.springframework.web.servlet.config.annotation.InterceptorRegistry;
- import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry;
- import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
- @AllArgsConstructor
- @Configuration
- public class WebMvcConfig implements WebMvcConfigurer {
- public static final String USER_UUID = "UUID";
- public static final String USER_TIME = "TIME";
- /**
- * Controller Handler 인터셉서 등록
- * @param registry
- */
- @Override
- public void addInterceptors(InterceptorRegistry registry) {
- registry.addInterceptor(new SessionTimerInterceptor());
- registry.addInterceptor(new LoggerInterceptor());
- registry.addInterceptor(new UserInterceptor());
- registry.addInterceptor(new ApiInterceptor())
- .addPathPatterns("/api/**") // API Controller interceptors
- .excludePathPatterns("/facility/**", "/wall/**") // 해당 경로는 인터셉터가 가로채지 않는다.
- ;
- }
- @Override
- public void addCorsMappings(CorsRegistry registry) {
- registry.addMapping("/**")
- //.allowCredentials(true)
- //.allowedOriginPatterns("*")
- .allowedOrigins("*") // 허용할 Origin(요청 url) : "*" 의 경우 모두 허용
- .allowedMethods("GET", "POST", "PUT", "DELETE") // 허용할 request http METHOD : POST, GET, DELETE, PUT
- .maxAge(3600) // 브라우저 캐시 시간(단위: 초) : "3600" 이면 최소 1시간 안에는 서버로 재요청 되지 않음
- ;
- }
- // @Override
- // public void addViewControllers(ViewControllerRegistry registry) {
- // //registry.addRedirectViewController("/", "/api/auth/login.do");
- // }
- @Override
- public void addResourceHandlers(ResourceHandlerRegistry registry) {
- // registry.addResourceHandler("swagger-ui.html")
- // .addResourceLocations("classpath:/META-INF/resources/");
- // registry.addResourceHandler("/webjars/**")
- // .addResourceLocations("classpath:/META-INF/resources/webjars/");
- String separator = System.getProperty("file.separator");
- String mapDataDir = System.getProperty("user.dir")+separator+"MAPDATA/";
- String downloadDir = System.getProperty("user.dir")+separator+"download/";
- registry.addResourceHandler("/MAPDATA/**")
- .addResourceLocations("file:///" + mapDataDir)
- //.setCachePeriod(60) // seconds
- ;
- registry.addResourceHandler("/download/**")
- .addResourceLocations("file:///" + downloadDir)
- //.setCachePeriod(60) // seconds
- ;
- }
- public static String encUserId(String userId) {
- return userId;
- }
- public static String decUserId(Object encUserId) {
- String decUserId = (String)encUserId;
- return decUserId;
- }
- }
|