대머리개발자

http1.1 get은 브라우저가 캐쉬를 하네.ㅎㄷㄷ 본문

개발이야기/예외

http1.1 get은 브라우저가 캐쉬를 하네.ㅎㄷㄷ

대머리개발자 2023. 11. 1. 20:43
728x90

 

10년을 개발하면서 ㅋㅋㅋ...복사 붙여넣기 하니깐

개념은 몰라도 아웃풋만 나오면 되니깐!!

 

인그레스 설정을...아무생각 없이 잘못 바꿨다. 

 

물론 잘 못 바꿨는지도 몰랐다. ㅋ 그것을 알았으면 변경을 안 했겠지. ㅡ,.ㅡ

 

안 된다는 CS가 ... 나오자.. 뭐지? 하고.. 보는데..

타이밍 맞게 서버쪽도 재기동한지라.. 혼돈의 카오스. 뭘 봐야하제?

 

step 1.

해당 api 응답이 확인s!!!

404가 떨어졌으면 바로 캐취했을텐데 응답은 200으로 정상적으로 왔다...띠용하고 응답 내용을 봤더니 

전혀 다른 내용의 응답이 왔다.

 

step 2. 

왜 전혀 다른 응답이지??......

아..! 인그레스..! 띠용.ㅠ

 

정확한 매칭이  안되면 전역으로 설정된 프론트가 받아서 html 조각으로 응답으로 준것이다. ㅡㅡㅎ

프론트 설정 >>  /(.*)

서비스 설정 >> /ok/(.*).  -> /nk/(.*)

 

ok -> nk로 변경했으니... 프론트 매칭으로 api가 빠진것이다.

 

매칭되는 것이 없다면... 404로 리턴 할 수 있도록 하자!!.

 

step 3.

잽사게 nk -> ok로 변경했는데도...... 왜??? 왜냐규!!!

해결책이 혹시 몰라 브라우저 캐쉬를 지워주니 정상동작을 했다.... 아..?

 

step 4.

구글링을 했더니.. get 방식은 캐쉬를 갔는다고 한다. ^^ ?? ㅜㅜ

아따 우린 restful하게 get / post/ put / delete를 다 설계했는디...

 

 

브라우저가 캐쉬를 하는 조건은 리소스일때만이다.

근데 프론트의 리소스가 리턴되면서 뭔가 아다리가 딱딱 맞어 떨어졌다.

 : GET을 통해 서버에 리소스를 요청할 때 웹 캐시가 
                요청을 가로채 서버로부터 리소스를 다시 다운로드하는 대신 리소스의 복사본을 반환한다.

 

 

근데 무조건적으로 캐쉬 하지는 않겠지???하고

헤더 값에 timestamp 설정했다.... 요청하는 헤더 데이터가 다른데???

캐쉬하겠어라는 생각으로 빙고스!!...?

 

바로 반영된 값이 오지 않고 캐쉬 데이터가 오다가 .. 몇 번 더 요청을 했더니.. 그제서야......

 

다른 방법으로 고민을 해봐야겠다. ㅎ

 

오늘 아..?를만 몇 번 했냐....쉬엄쉬엄하자!! 그리고 정신차리자!!!

 

728x90