gpt4 book ai didi

javascript - http-server net 提供新鲜的 js 文件

转载 作者:行者123 更新时间:2023-12-02 23:49:33 25 4
gpt4 key购买 nike

我以前没有使用过 http-server npm 模块!

我刚刚开始使用 Service Worker,通过使用 this blog as a source 创建一个示例应用程序

这里作者使用了http-server来演示Service Worker!

从博客中,我复制了代码片段来检查是否支持 chrome

const check = () => {
if (!('serviceWorker' in navigator)) {
throw new Error('No Service Worker support!')
}
if (!('PushManager' in window)) {
throw new Error('No Push API Support!')
}
console.log('Everything works fine')
}
const main = () => {
check()
}
main()

注意 console.log('一切正常')

现在,当我继续阅读文章时,我按照指示更改了我的 main.js

const check = () => {
if (!('serviceWorker' in navigator)) {
throw new Error('No Service Worker support!')
}
if (!('PushManager' in window)) {
throw new Error('No Push API Support!')
}
console.log(`Browser supports Pushmanager and Service worker`)
}

// Async so we can use await
const main = async () => {
check()
const swRegistration = await registerServiceWorker();
}


//To run service worker we need to first register service worker
//Registering Service Worker
const registerServiceWorker = async () => {
const swRegistration = await navigator.serviceWorker.register('service.js'); //notice the file name
return swRegistration;
}

但是当我进入该页面时,它会不断从控制台中的第一个代码片段记录此内容

Everything works fine

我检查了 main.js,看来服务器仍在提供以前的 main.js,而不是新的 main.js。

如果我手动转到我的文件并在没有服务器的情况下打开它,main.js 会显示我的新代码更改。

我尝试关闭服务器(使用 ctrl/cmd + c)并重新启动它,但没有帮助。

有人可以帮我解决这个问题吗?

最佳答案

看起来http-server告诉浏览器cache pages for an hour by default :

-c Set cache time (in seconds) for cache-control max-age header, e.g. -c10 for 10 seconds (defaults to '3600'). To disable caching, use -c-1.

使用 http-server -c-1 重新启动服务器,然后在浏览器中进行硬刷新(在 Firefox 或 Chrome 中为 Ctrl/Cmd+Shift+R) .

关于javascript - http-server net 提供新鲜的 js 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55698628/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com