Node.js 节点JS上HTTPS上的LiveReload将不起作用

Node.js 节点JS上HTTPS上的LiveReload将不起作用,node.js,https,livereload,Node.js,Https,Livereload,它一直工作得很好,直到我不得不改成https。 以下是我对livereload的配置: const express = require("express"); const app = express(); const path = require('path'); const livereload = require('livereload') const connectLiveReload = require('connect-livereload') const li

它一直工作得很好,直到我不得不改成https。 以下是我对livereload的配置:

const express = require("express");
const app = express();
const path = require('path');
const livereload = require('livereload')
const connectLiveReload = require('connect-livereload')


const liveReloadServer = livereload.createServer();
liveReloadServer.watch(publicDirectory)
liveReloadServer.server.once("connection",()=>{
    setTimeout(() => {
        liveReloadServer.refresh("/");
    }, 200);
})

app.use(connectLiveReload());
它开始显示的错误是:


当然,它不会接受更改和重新加载。

来自livereload软件包的npm页面

服务器API

createServer()方法接受两个参数

第一个是一些配置选项,作为JavaScript传递 对象:

  • https是要传递给的选项的可选对象 https.createServer(如果未提供,则使用http.createServer (取而代之)
您可以查看关于https.createServer的NodeJS文档

因此,我认为liveReloadServer的配置如下,您使用SSL证书和密钥:

const liveReloadServer = livereload.createServer({
    https : {
        key: fs.readFileSync('test/fixtures/keys/agent2-key.pem'),
        cert: fs.readFileSync('test/fixtures/keys/agent2-cert.pem')
    }
});

我可以发誓我试过这个。有趣的是,它可以在chrome浏览器上运行,但不能在Brave浏览器上运行。我收到了“net::ERR\u CERT\u AUTHORITY\u INVALID”错误。Nvm,重新启动了Brave浏览器,它现在可以运行了