var privateKey = fs.readFileSync('/path/to/franciskim.co.key', 'utf8');
var certificate = fs.readFileSync('/path/to/franciskim.co.crt', 'utf8');
var credentials = { key: privateKey, cert: certificate };
Run Code Online (Sandbox Code Playgroud)
为什么不只是 fs.readFile?为什么要读取文件同步?
因为您通常在服务器启动时执行一次,这是唯一一次可以在事件循环的第一个滴答声中使用像fs.readFileSync()或这样的阻塞调用require()。
在读取这些键之前,您通常不希望发生任何其他事情,并且阻止调用要容易得多。那时还没有处理任何事件,因此不会发生性能下降和并发问题。
但是在事件循环的第一个滴答结束后,您应该只使用非阻塞调用。
并不是说无法用于fs.readFile()获取证书文件,而是只有在所有相关fs.readFile()调用的所有回调都已成功完成后,您才需要启动其他任何操作。