【问题标题】:How to generate the certificate and key for HTTP/2 in Node.js如何在 Node.js 中为 HTTP/2 生成证书和密钥
【发布时间】:2019-11-12 13:19:13
【问题描述】:

我有一个 node.js 应用程序。我正在使用http,它可以工作。但我想在我的应用程序中使用 http2。我已经从 npm 安装了模块:

npm install http2

我这样使用它:(定义了 app 变量,我的应用程序可以完美地使用 HTTP。)

var http2 =require('http2') ;
var server=http2.createServer(app);

但这不起作用,我收到来自 POSTMAN 的“无法得到任何响应”错误。

当我编写 var http2= require('http') 时,它可以正常工作。

我在这里查看了 Http/2 文档:https://nodejs.org/api/http2.html#http2_server_side_example

这里写了一些我不明白的东西:

To generate the certificate and key for this example, run:

 openssl req -x509 -newkey rsa:2048 -nodes -sha256 -subj '/CN=localhost' \
  -keyout localhost-privkey.pem -out localhost-cert.pem

我将在哪里编写这些代码并运行?我找不到。

【问题讨论】:

  • 不是代码,是命令。 openssl 是您需要安装和运行的程序,其中列出的参数。在“openssl”上进行简单的互联网搜索即可找到它,以及如何安装它的说明等。
  • 您还需要更改代码以使用 https,它在您链接的文档中
  • 另外,“此软件包已被弃用 作者消息:使用节点 9.0.0 或更高版本中的内置模块,而不是”您不需要也不应该安装。它带有 node.js

标签: javascript node.js http https


【解决方案1】:

您需要在终端中运行此命令,因此在 Windows 上可以是 powershell、Konsole 或 Linux 或 MacOS 上的终端。您可能必须使用操作系统包管理器安装 openssl。我建议谷歌搜索:

“安装 openssl $your_os_here”

然后它会生成一些你可以在你的节点代码中使用的文件

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-02-05
    • 1970-01-01
    • 2014-08-29
    • 2018-12-04
    • 2015-12-18
    • 2020-04-27
    • 1970-01-01
    • 2015-07-08
    相关资源
    最近更新 更多