當我們在做項目的時候,引用js或者css是通常會在后面加上時間戳,舉例如下:
<link href="/congent/css1?v=@Config.InitTimestamp" type="text/css" rel="stylesheet"/>
v的后面就是引用的時間戳,那么時間有什么作用,該如何定義了?具體如下>>
時間戳的作用
好多Linux + Apache的服務器都會對CSS、JS和圖片這些靜態的內容設置緩存,到了IE這里又會在本地做一個緩存。所以當我們更新了CSS文件之后,常常會出現客戶端沒有更新,導致顯示出現問題,所以使用了時間戳。總之一句話概括使用時間戳的目的就是:禁止緩存css、js,使瀏覽器同步更新到服務器端最新的靜態內容。
定義時間戳
/// <summary> /// 站點初次加載時間戳 /// </summary> private static string _initTimestamp; public static string InitTimestamp { get { if (string.IsNullOrEmpty(_initTimestamp)) { var start = new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Local); _initTimestamp = Convert.ToInt64((DateTime.Now - start).TotalSeconds).ToString(); } return _initTimestamp; } }