const express = require("express");
const morgan = require("morgan");
const cors = require("cors");
const https = require("https");
const fs = require("fs");
const expressWs = require("express-ws");
const app = express();
expressWs(app);
const bodyParser = require("body-parser");
const router = require("./router/index");
app.use(express.static("images"));
app.use(bodyParser.json({ limit: "10mb" }));
// app.use(morgan("dev"));
app.use(express.json());
app.use(express.urlencoded());
app.use(cors());
const PORT = process.env.PORT || 7778;
app.use("/api", router);
var privateCrt = fs.readFileSync(
"./config/cert/**************.pem",
"utf8"
);
var privateKey = fs.readFileSync(
"./config/cert/************.key",
"utf8"
);
const options = {
key: privateKey,
cert: privateCrt,
};
app.ws('/', function(ws, req) {
ws.on('message', function(msg) {
console.log(msg);
});
console.log('socket', req.testing);
});
const server = https.createServer(options, app)
server.listen(PORT, () => {
console.log(`server is runing at https://localhost:${PORT}`);
});
求问为什么以上的代码无法使用wss://localhost:7778/进行访问。
我在尝试将ssl证书去掉之后就可以使用ws://localhost:7778/进行访问就是正常的