我不知道科爾多瓦什麼,但假設它使用NSURLConnection的或NSURLSession引擎蓋下,並假設它是可以添加本地代碼,您可以禁用緩存NSURLConnection的是這樣的:
NSURLCache *URLCache =
[[NSURLCache alloc] initWithMemoryCapacity:4194304 // 4 MB
diskCapacity:0
diskPath:nil];
[NSURLCache setSharedURLCache:URLCache];
對於NSURLSession,您需要將會話配置的URLCache屬性更改爲您創建的URL緩存對象(而不是執行上面的第二行)。如果它使用NSURLSession,那大概需要對Cordova本身進行更改。
就這樣說,我不知道這是否適用於科爾多瓦。他們可能會使用自己的網絡代碼,在這種情況下,您必須以特定於Cordova的某種方式禁用緩存。
至於避免URL緩存問題,再次假設它使用NSURLConnection或NSURLSession,避免緩存任何敏感內容的最簡單方法是始終使用POST請求發送敏感數據,因爲這些結果永遠不會被緩存。
對於這個問題,即使科爾多瓦使用自己的網絡代碼,幾乎所有符合標準的網頁緩存都會強制執行POST請求的非可達性,所以這可能是一個相當安全的選擇。
感謝您回答@dgatwood。我所有的請求都是使用POST發送的,所以我想沒有更多要討論。 正如我所提到的,有一個Cordova插件是有意這樣做的,但它不適合我(插件是將本機代碼添加到應用程序的方式)。 – gemega