如何在Node.js中读取pem文件?

4
在使用NodeJS进行编码和解码时,我希望能够使用RS512算法对数据进行编码,为了使用该算法,我需要将密钥作为pem文件传递,因此我使用require导入该pem文件,但是我无法导入该文件。
我使用的代码是:
const secretKey = require("./secretkey.pem");

当我使用这种方式导入文件时,会出现错误。
ReferenceError: Invalid left-hand side expression in prefix operation

如何解决这个问题。
2个回答

6

你不能使用require加载 PEM 文件,这只适用于 JS 和 JSON 文件。该错误是由于 PEM 文件不是有效的 JS 语法而引起的。

要读取其他文件(包括 PEM 文件)的原始数据,可以使用 fs 模块:https://nodejs.org/api/fs.html

例如:

const fs = require('fs');

fs.readFile("./secretkey.pem", "ascii", function (pemContents) {
  // do whatever you want here
});

6

这个对我来说运作良好

import * as fs from 'fs';



const publicKey = fs.readFileSync("../server/src/config/public.pem", { encoding: "utf8" });

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接