nodejs https服务器没有响应

时间:2013-04-29 12:45:20

标签: node.js https

我的https服务器正在运行,但它无法处理请求:

const crypto = require('crypto'),
      fs = require("fs"),
      http = require("http");
var https = require('https');

var privateKey = fs.readFileSync('C:\\dev\\apps\\OpenSSL-Win64\\batar\\azerty.pem');
var cert = fs.readFileSync('C:\\dev\\apps\\OpenSSL-Win64\\batar\\tg.pem');


var options = {
  key: privateKey,
  cert: cert
};

console.log( options );

https.createServer(options, function (req, res) {
  console.log("handling request");
  res.writeHead(200);
  res.end("hello world\n");
}).listen(8000);

当我输入服务器地址localhost:8000时,浏览器会加载很长时间,最终会出现“空响应”错误。

这是服务器输出:

C:\>node dev\nouille\server.js
{ key: <Buffer 2d 2d 2d 2d 2d 42 45 47 49 4e 20 52 53 41 20 50 52 49 56 41 54 45 20 4b 45 59 2d 2d 2d 2d 2d 0a 4d 49 49 43 58 51 4
9 42 41 41 4b 42 67 51 44 56 61 4c 41 ...>,
  cert: <Buffer 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 0a 4d 49 49 43 66 7a 43 43 41 65
67 43 43 51 43 63 66 52 6a 78 57 32 72 ...> }

1 个答案:

答案 0 :(得分:0)

这几乎可以肯定是因为没有连接https:协议。由于大多数浏览器都会从网址中删除“http(s)://”,因此很容易犯错,尤其是在https://localhost:8443上配置https服务器的开发框或其他非标准端口上

所以,在拔出你的头发之前先检查你的方案。

- 感谢@user568109提供指导!