使用Node.Js Server时Angular 7 Service Worker无法脱机工作

时间:2018-12-08 08:17:25

标签: node.js angular service-worker progressive-web-apps angular7

我有一个Angular 7项目,其中添加了PWA功能。 我基本上将所有与PWA相关的设置都设置为默认设置。


我的问题是,在将项目部署到服务器时,离线模式不起作用。在本地主机上启动服务器时,它也不起作用。

但是,当使用npm模块http-server在本地主机上托管应用程序时,脱机模式有效。


在线应用服务工作者:

sw

这是离线加载应用程序时发生的情况:

offline


我的Node.Js服务器的代码如下:

require('module-alias/register')
const express = require('express')
const app = express()
const prod = require('@root/prod')
const port = process.env.PORT || 3000
const path = require('path')
const compression = require('compression')
app.use(compression())
const bodyParser = require('body-parser')
app.use(bodyParser.json())
app.use(bodyParser.urlencoded({ extended: true }))

app.use(express.static(path.join(__dirname, '../client/dist/client')));
const api = require('@root/api/api.routes')
app.use('/api', api)
app.get('*', (req, res) => {
    res.status(200).sendFile(path.join(__dirname, '../client/dist/client/index.html'))
})
app.use(function (err, req, res, next) {
    console.log('error occured', err.stack);
    res.status(500).send({ "Error": err.stack });
});
app.listen(port, () => {
    console.log(`• • •`)
    console.log(`• Server launched   on port`, port)
    console.log(`• Server running in ${prod ? '  production' : '  development'} mode`)
    console.log(`• • •`)
})

这是生产版本中的所有文件:

fiels

0 个答案:

没有答案