我试图用HttpResponseCache缓存这个文件:http://media.admob.com/sdk-core-v40.js。基本上,我调用getFileFromUrl函数两次,以便它第一次从互联网获取资源,第二次从缓存中获取资源。HttpResponseCache不缓存文件
但是,对于这两种方法,都会出现此错误:“资源未被缓存!java.io.FileNotFoundException:http://media.admob.com/sdk-core-v40.js”。这是否意味着该文件没有被缓存,并且无法访问它?代码有什么问题?
enableHttpCaching();
getFileFromURL(url);
getFileFromURL(url);
public static void getFileFromURL(String src) {
try {
URL url = new URL(src);
HttpURLConnection connection=(HttpURLConnection)url.openConnection();
connection.setUseCaches(true);
connection.addRequestProperty("Cache-Control", "only-if-cached");
InputStream input = connection.getInputStream();
System.out.println("The resource was cached!");
}catch (FileNotFoundException e) {
System.out.println("The resource was not cached!" + e);
}catch (IOException e) {
e.printStackTrace();
}
}
对我来说,我有'缓存控制的响应:私人的,必重新验证,最大年龄= 0',不管我做什么,我都不能强迫它缓存。你解决了这个问题吗? – rraallvv 2017-12-20 21:20:43
你通过了什么** src **? – 2018-02-16 13:54:47