我不是在各个位置更新相同的变量,而是解析文件并提取我需要的位。我正在寻找的是我的service-worker.js文件中的缓存名称。当我在本地开发时,我可以轻松地在目录结构中检索js文件。
当我将我的应用程序部署到GAE时,需要将服务工作者JS文件声明为静态,因此GAE会将其隐藏在某处。
有没有办法在不拨打URL的情况下访问此文件?
这是我目前使用的,它在DEV中工作正常:
<?php
function getCacheId() {
$cache_id = "";
$c = file_get_contents ( dirname ( __FILE__ ) . "/service-worker.js" );
if (preg_match ( "/CACHE_NAME = '(.*)'/", $c, $matches ) !== false) {
if (count ( $matches )) {
$cache_id = trim ( $matches[1] );
}
}
return $cache_id;
}
?>
<script>
const CACHEID = "<?php echo getCacheId() ?>";
</script>
答案 0 :(得分:3)
除了application_readable: true
文件中的静态文件声明之外,您还需要配置app.yaml
。
<强> application_readable 强>
可选。布尔。默认情况下,在静态文件处理程序中声明的文件 作为静态数据上传,仅供最终用户使用。他们 应用程序无法读取。如果此字段设置为true,则 文件也作为代码数据上传,以便您的应用程序可以阅读 他们。这两个上传都是根据您的代码和静态数据收取的 存储resource quotas。