Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
Tags
- CSTS 폭포수 모델
- bfs 미로탐색 java
- 재귀 예제
- 피보나치 예제
- Katalon Recorder 사용법
- 해외증권 양도세 한국투자증권
- 해외주식 양도세 신고
- katalon 사용법
- javascript 자동완성
- 한국투자증권 양도세 신고
- katalon 비교
- 테스트 자동화
- 최대공약수 예제
- 국세청 해외주식 양도세 신고방식
- js 자동완성
- recursion example
- 주식 양도세 신고방법
- java.sql.SQLSyntaxErrorException
- 피보나치함수
- katalon 자동화
- 홈택스 해외주식 양도세
- 톰캣 실시간 로그
- katalon
- 한국투자증권 해외주식 양도세
- 재귀함수 예제
- oracle group by
- git 연동
- 피보나치함수 예제
- katalon xpath
- tomcat log
Archives
- Today
- Total
엄지월드
캐시 때문에 css 갱신 안되는 현상 개선 본문
배경 : css를 업데이트했는데, 캐시 때문에 사용자들에게 이전 css가 보여지면서 화면이 깨지는 현상이 있었다.
그래서 방법을 찾아보니 캐시 때문에 css 파일이 갱신이 안되는 경우,
파라미터를 주게 되면 새로운 파일로 인식하게 되어 새롭게 로딩을 받을 수 있다는 사실을 찾아냈다.
방법은 파일의 수정된 시간에 대한 정보를 읽어와서 파라미터로 주도록 설정하는 코드를 찾아서 적용하였다.
<!DOCTYPE html>
<html>
<head>
<script>
function getFetchVersion(file) {
try {
fetch(file).then(r => {
const lastModGmt = new Date(r.headers.get('Last-Modified')); // 마지막 수정일자
return fetchCallback(file + '?' + lastModGmt.getTime()); // 파일 이름과 파라미터
});
} catch (er) {
return er.message;
}
}
function fetchCallback(path) {
let link = document.createElement("link");
link.type = "text/css";
link.rel = "stylesheet";
link.href = path;
document.getElementsByTagName("head")[0].appendChild(link); // 태그를 넣음
}
getFetchVersion('/src/css/product/product.css');
</script>
</head>
<body>
...
</body>
</html>
아래와 같이 깔끔하게 뺄 수 있다.
<!DOCTYPE html>
<html>
<head>
<script th:src="/src/js/common/util.js"></script>
<script>getFetchVersion('/src/css/product/product.css');</script>
</head>
<body>
...
</body>
</html>
'java' 카테고리의 다른 글
DEBUG SMTP: AUTH LOGIN failed (0) | 2022.12.30 |
---|---|
java stream 파일 읽기 (0) | 2022.12.14 |
eclipse module import 및 export 방법 (0) | 2022.09.30 |
메서드(Method) 함수(Function) 차이 (0) | 2021.03.14 |
java8 lambda stream 시작하기 (0) | 2018.09.01 |
Comments