Programming/Error

o.a.h.c.protocal.ResponseProcessCookies : Invalid cookie header

Jan92 2021. 8. 7. 10:37
반응형

 

springboot 프로그램 동작 중 발생한 Invalid cookie headeer 오류

 

 

2021-08-05 13:17:32.243  WARN 10664 --- [  restartedMain] o.a.h.c.protocol.ResponseProcessCookies  : Invalid cookie header: "Set-Cookie: AWSALB=GLC7UzreO+rTzXNlwMuiB6mONl3Ih++VelqGEo8WUnZ8XsW7l9RwIDsOXFipfqfNFHjkWEwl2vbSpLuPj30vNHsti8uYx8pNudxsFmF2g5z5WK4dMyiAN8AKy4ng; Expires=Thu, 12 Aug 2021 04:17:32 GMT; Path=/". Invalid 'expires' attribute: Thu, 12 Aug 2021 04:17:32 GMT
2021-08-05 13:17:32.243  WARN 10664 --- [  restartedMain] o.a.h.c.protocol.ResponseProcessCookies  : Invalid cookie header: "Set-Cookie: AWSALBCORS=GLC7UzreO+rTzXNlwMuiB6mONl3Ih++VelqGEo8WUnZ8XsW7l9RwIDsOXFdpbqzNFHjlWEwl2vbSpLuPj70vNHsti8uYx8pNudxsFmF2f5x5WK4dMyiAN8AKy4ng; Expires=Thu, 12 Aug 2021 04:17:32 GMT; Path=/; SameSite=None; Secure". Invalid 'expires' attribute: Thu, 12 Aug 2021 04:17:32 GMT

서버에서 WARN 10664 발생하였고, 정상적으로 구동은 되었으나 경고의 원인이 무엇인지 해결하기 위해 구글링 했습니다.

 

 

결론적으로 원인과 이유를 밝히지 못하고 일단 api 통신을 위해 사용하고 있던 RestTemplate 수정을 통해 문제를 해결했습니다.

@Configuration
public class RestTemplateConfig {
	@Bean
    	public RestTemplate restTemplate() {
    	HttpComponentsClientHttpRequestFactory factory = new HttpComponentsClientHttpRequestFactory();
        factory.setReadTimeout(0);
        factory.setConnectTimeout(0);
        HttpClient httpClient = HttpClientBuilder.create()
        	.setMaxConnTotal(120)
            	.setMaxConnPerRoute(60)
            	.build();
        factory.setHttpClient(httpClient);
        return new RestTemplate(factory);
    }
}

기존의 RestTemplate

 

 

@Configuration
public class RestTemplateConfig {
	@Bean
    	public RestTemplate restTemplate() {
        RequestConfig requestConfig = RequestConfig.custom()
        	.setCookieSpec(CookieSpecs.STANDARD)
            	.build();
        
    	HttpComponentsClientHttpRequestFactory factory = new HttpComponentsClientHttpRequestFactory();
        factory.setReadTimeout(0);
        factory.setConnectTimeout(0);
        HttpClient httpClient = HttpClientBuilder.create()
        	.setMaxConnTotal(120)
            	.setMaxConnPerRoute(60)
                .setDefaultRequestConfig(requestConfig)
            	.build();
        factory.setHttpClient(httpClient);
        return new RestTemplate(factory);
    }
}

RequestConfig를 추가한 RestTemplate

 

requestConfig에 cookie 정보를 넣고 작동시키니 경고는 사라졌습니다.

경고는 사라졌지만 문제를 올바르게 해결한 건지 문제의 정확한 원인과 이유는 좀 더 찾아봐야 할 듯합니다.

반응형