【发布时间】:2022-03-15 20:15:09
【问题描述】:
出于某种原因,我尝试使用的函数显然不是函数。
Welcome to Node.js v14.15.1.
Type ".help" for more information.
> const crypto = require("crypto");
undefined
> x = crypto.randomBytes(32).toString("hex")
Uncaught TypeError: crypto.randomBytes is not a function
randomBytes() 的文档。
有什么我不明白的地方吗?
【问题讨论】:
-
在 v17 上测试了这段摘录,效果很好。还检查了 v14.15 中
randomBytes的文档,似乎存在,模块本身似乎已经存在很长时间了。尝试重命名变量crypto以避免名称阴影,但除此之外,这非常神秘。 -
我喜欢你的双关语。是的,这很奇怪:?
-
我已经针对 Node 的确切版本 (
docker run -it node:14.15.1-slim node) 测试了您的 sn-p,但无法重现该问题。 -
尝试记录crypto,只是为了检查它是否导入了正确的模块:
console.log(crypto);,并将其与官方文档进行比较,您应该能够看到文档中提到的每个函数和常量。
标签: javascript node.js node-crypto