我能够成功注册服务工作者,但是当我尝试简单的控制台日志时,我得到以下结果 - 开发工具屏幕截图
它看起来像某种路由错误,但我不知道如何解决它。
我的代码看起来像这样
产品.js文件
if ('serviceWorker' in navigator) {
// Register a service worker hosted at the root of the
// site using a more restrictive scope.
navigator.serviceWorker.register('/static/js/sw.js').then(function() {
console.log('Service worker registration succeeded:');
}).catch(function() {
console.log('Service worker registration failed:');
});
} else {
console.log('Service workers are not supported.');
}
软件.js文件
console.log('Hello')
将此代码添加到路由文件中:
@app.route('/sw.js', methods=['GET'])
def sw():
return app.send_static_file('sw.js')
然后,将sw.js
文件直接放在 static
目录中,而不是js
目录中。在offerings.js
文件中,使用相对路径(即 ../sw.js
(。让我知道这是否有效。
我设法通过编写以下代码来运行它
from flask import make_response, send_from_directory
@app.route(‘/sw.js’)
def sw():
response = make_response(send_from_directory(‘static’, file name=‘sw.js’))
#change the content header file
response.headers[‘Content-Type’]=‘application/javascript’
return response