Nest.js - guard如何注入service,并全局使用

今天碰到个问题,写了一个守卫(guard),由于里面会用到某个service里的功能,所以在constructor里面添加了这个service。如图:

 

image.png

这里都没有问题,但是想要全局使用的时候就出错了。

 

image.png

后来查了半天资料,总算在nest.js issue找到了答案。
修改代码如下:

image.png



作者:辻子路
链接:https://www.jianshu.com/p/afabfefa4c4d
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

Nest.js,你可以使用crypto-js库进行加密和解密操作。crypto-js是一个JavaScript加密库,它提供了各种常见的加密算法,如AES、DES、SHA等。要在Nest.js使用crypto-js,你需要先安装它。 首先,在你的Nest.js项目打开终端,并运行以下命令来安装crypto-js库: ```bash npm install crypto-js ``` 安装完成后,你可以在你的代码引入crypto-js使用它的加密和解密功能。以下是一个简单的示例: ```typescript import { Injectable } from "@nestjs/common"; import * as CryptoJS from 'crypto-js'; @Injectable() export class CryptoUtil { encrypt(text: string, secretKey: string): string { return CryptoJS.AES.encrypt(text, secretKey).toString(); } decrypt(ciphertext: string, secretKey: string): string { const bytes = CryptoJS.AES.decrypt(ciphertext, secretKey); return bytes.toString(CryptoJS.enc.Utf8); } } ``` 上面的代码示例展示了如何在Nest.js的CryptoUtil类使用crypto-js库进行加密和解密操作。在encrypt方法,我们使用AES算法和给定的密钥对文本进行加密。在decrypt方法,我们使用相同的密钥对密文进行解密。 你可以根据自己的需求调整和扩展这个示例。请注意,为了使用crypto-js库,你需要在文件头部引入CryptoJS,并使用`import * as CryptoJS from 'crypto-js';`语句。 希望这个示例对你理解在Nest.js使用crypto-js进行加解密有所帮助。如果你还有其他问题,请随时提问。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值