Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/string/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Caching 指示浏览器缓存忽略某些URL参数_Caching_Iframe_Browser Cache - Fatal编程技术网

Caching 指示浏览器缓存忽略某些URL参数

Caching 指示浏览器缓存忽略某些URL参数,caching,iframe,browser-cache,Caching,Iframe,Browser Cache,我想要两个Iframe <iframe src="www.URL.com?name=benny&runtime=1231231> <iframe src="www.URL.com?name=benny&runtime=757847584> 在不同时间加载以映射到浏览器中的相同缓存值。服务器与此无关。基本上,有没有办法让chrome、firefox等。。。缓存api在查找src时忽略某些参数(在本例中为“运行时”) 在不可能的用例中,传递单独的参数

我想要两个Iframe

 <iframe src="www.URL.com?name=benny&runtime=1231231>
 <iframe src="www.URL.com?name=benny&runtime=757847584>

在不同时间加载以映射到浏览器中的相同缓存值。服务器与此无关。基本上,有没有办法让chrome、firefox等。。。缓存api在查找src时忽略某些参数(在本例中为“运行时”)


在不可能的用例中,传递单独的参数或单独调用运行时将不起作用。您需要从
src
中删除具有不同值的参数,或者使用
XMLHttpRequest
和blob来请求资源,并使用JavaScript从请求URI中删除参数。如果你将使用<代码> XMLHttpRequest < /代码>,你也需要考虑同源策略。

浏览器缓存键是HTTP方法和URI的组合。查询参数是URI的一部分。相关摘录自:

主缓存键由请求方法和目标URI组成。 然而,由于目前常用的HTTP缓存通常是有限的 为了缓存要获取的响应,许多缓存只是简单地拒绝其他方法 并仅使用URI作为主缓存键

有关更多信息,请查看Eric Bidelman和MDN


若您控制为您的资源提供服务的服务器,您还可以通过某些参数调整它以改变缓存条目。例如,在ASP.NET MVC中,可以使用
OutputCache
属性的
VaryByParam
属性。有关更多信息,请查看Microsoft ASP.NET团队。

如果
www.URL.com?name=benny&runtime=1231231
www.URL.com?name=benny&runtime=757847584
指向相同的资源,为什么首先需要
运行时
参数?您可能应该从这些URL中删除
runtime
参数?由于缓存忽略缓存
之后的所有内容,
表示URI的查询组件的开始<代码>#表示片段组件的开始。严格地说,浏览器HTTP缓存不会忽略片段,而不会发送它。查询和片段是不同的事物,存在的目的不同。要了解片段是否适合您的情况,您可以检查URI规范的和部分。