2017-01-30 116 views

回答

3

如果您控制了服務器代碼,則應該設置不允許緩存的相應標頭。

您可以設置標題

Cache-Control: no-cache 
Expires: -1 
1

一個可能的方法是實現一個HTTP攔截器並附加一個時間戳,如果帶有URL的請求已經被執行。

@Injectable() 
export class CustomHttp extends Http { 
    urls: {string:string} = {}; 

    get(url: string, options?: RequestOptionsArgs): Observable<Response> { 
    if (this.urls[url]) { 
     options = options || {}; 
     options.search = options.search || new URLSearchParams(); 
     options.search.set('timestamp', (new Date()).getTime()); 
    } 

    return super.get(url, options).do(() => { 
     this.urls[url] = true; 
    }); 
    } 
}