我们正在尝试使用 google tink,下面是我们如何使用它的示例。
const tinkLoader = () => import("tink-crypto");
tinkLoader().then((tink) => {
tink.hybrid.register();
const keyset = stringToUint8Array(atob(resource_response.data.encoded_key));
tink.binary
.deserializeNoSecretKeyset(keyset)
.getPrimitive(tink.hybrid.HybridEncrypt)
.then((hybridEncrypt) => {
//do some thing
});
});
这是错误消息:
ReferenceError: self is not defined
at internal/proto.ts:85:23
at node_modules/tink-crypto/bundles/tink-crypto.umd.js:2:68
at Object. (node_modules/tink-crypto/bundles/tink-crypto.umd.js:5:2)
我们使用了 npm https://www.npmjs.com/package/tink-crypto所以我认为 google tink 支持后端 JS。但是根据此消息,代码中的某处引用了 self ,它是 Window 类的变量,而 Nodejs 中不存在 Window 。我们的节点是 V12。
谁能帮我解决这个问题?在网上很难找到任何关于 JS tink 的文档。
谢谢!