我的项目是在Angular 6中,它有以下代码行
const crypto = require('crypto-js');
const Buffer = require('buffer').Buffer;
const decrypt = new Buffer(data.result.encr, 'base64');
const privatekey = Buffer.from(data.result.pk, 'base64');
this.decrypted = crypto.privateDecrypt(privatekey, decrypt).toString('utf-8');
return this.decrypted;
它运行良好。
现在我把代码迁移到了Angular 9。我发现crypto
不再支持NPM
https://www.npmjs.com/package/crypto
它说我必须使用加密的内置库。但我不知道怎么用。
我想crypto-js
会帮助我。但事实并非如此。
如果有人知道如何在Angular 9中使用crypto
,或者如何将上面的行转换为crypto-js
,那就太好了。
注意:加密只发生在服务器端,因为它们有nodejs。
先谢谢你了。
4条答案
按热度按时间cnjp1d6j1#
3-4天后,我终于解决了这个问题。
1.我安装了crypto-browserify。
1.删除node_modules文件夹,然后使用
npm-install
再次安装所有依赖项crypto-browserify
提供与crypto
相同的功能p5cysglq2#
我最近在我的MEAN Stack应用程序中实现了这一点。使用以下命令安装crypto-js后:
在Nodejs中,以下实用程序可以在整个应用中使用:
q9yhzks03#
根据所需的哈希值,对我来说最好的选择是ts-md5 lib。
egdjgwm84#
我使用的是Angular 16,并在一个方法中使用了crypto,它工作了。我没有使用任何包裹。
我的要求是得到一些随机数。