개발자가 우리 모두에게이 문제가 발생했습니다. 웹 사이트에서 유지 관리를 수행해야하며 클라이언트 스크립트가 있습니다. foo.js
이제 foo.js
을 변경하고 테스트하고 체크인하고 테스트 환경에 새로운 코드가 추가되었습니다. 테스트 사용자는 브라우저에 이전 foo.js
이 여전히 캐시에 저장되어 있기 때문에 문제를 해결하지 못했다고 주장합니다.브라우저 자바 스크립트 캐싱 문제를 방지하는 모범 사례
파일 내용의 해시를 만들고 파일 이름에 사용하려고합니다. foo_8c736521.js
해시 -> 파일 이름 바꾸기 -> BundleConfig.cs 업데이트를 만들 수 있습니다. 하지만 Visual Studio 내에서 자동으로이 작업을 수행하려고합니다.
C# .NET에서 나를 위해 이것을 처리하는 라이브러리가 있습니까?
내 web.Test.config 파일이 변환을 추가했습니다 :
<system.web>
<compilation debug="false" targetFramework="4.5" xdt:Transform="Replace" />
</system.web>
이제 번들 최적화는이 환경에서 사용할 수 있습니다. 그리고 그것은 작동합니다.
foo.js를 참조 V = 즉, 항상를 얻기 위해 브라우저를 강제 @aabilio –
aabilio
? 캐시 메커니즘을 효과적으로 비활성화합니다. 실제 파일 내용이 변경된 경우에만 캐시를 비활성화하고 싶습니다. –
아, 나는 그 질문을 이해하지 못했다. 따라서 서버를 제어 할 경우 Etag 및/또는 Last-Modified HTTP 헤더를 사용합니다. – aabilio