Node.js服务器已部署在Google Cloud Platform上,并且该服务器未在ipv6上进行侦听。 当我在移动浏览器(chrome)中运行我的API时,看到此错误:该网站无法提供安全的连接。 ERR_SSL_PROTOCOL_ERROR
如何使node.js服务器在ipv6上运行? 以下是我的代码:
const app = express();
const port = 8080;
const privateKey = fs.readFileSync(
'/path/to/privkey.pem',
'utf8'
);
const certificate = fs.readFileSync(
'/path/to/cert.pem',
'utf8'
);
const ca = fs.readFileSync(
'/path/to/chain.pem',
'utf8'
);
const options = {
key: privateKey,
cert: certificate,
ca: ca
};
https.createServer(options, app).listen(port, '::', () => {
console.log(`Server started on port ${port}`);
});
答案 0 :(得分:1)
我建议您尝试这段代码。您应该能够在本地主机的8082端口中检查它:https://localhost:8082/
const https = require('https');
const fs = require('fs');
const options = {
key: fs.readFileSync('key.pem'),
cert: fs.readFileSync('cert.pem')
};
https.createServer(options, function (req, res) {
res.writeHead(200);
res.end("hello world\n");
}).listen(8082);
希望这会有所帮助。