@lantsang/nestjs-wechat-pay
v1.0.2
Published
自用nestjs 微信支付插件
Downloads
14
Readme
Nestjs 微信支付插件
注意:仍在开发中,目前仅在内部使用
使用说明
外部人员仅供参考,请不要用于生产环境,因此导致的事故后果请自行承担。
支持环境
- TS target es2020
- node >= 14.x
- NestJS 7.x
安装
$ npm i @lantsang/nestjs-wechat-pay
or
$ yarn add @lantsang/nestjs-wechat-pay
推荐使用yarn
配置
同步方式
import { Module } from '@nestjs/common';
import { readFileSync } from 'fs';
import { WechatPayModule } from '@lantsang/nestjs-wechat-pay';
@Module({
imports: [
WechatPayModule.forRoot({
appId: '微信支付应用ID',
mchId: '微信支付商户ID',
apiKeyV3: '微信商户APIv3密钥',
publicKey: readFileSync('公钥路径'),
privateKey: readFileSync('私钥路径')
})
]
})
export class AppModule {}
异步方式
import { Module } from '@nestjs/common';
import { readFileSync } from 'fs';
import { WechatPayModule } from '@lantsang/nestjs-wechat-pay';
import { ConfigModule } from './config/config.module';
import { CONFIG_PROVIDER } from './config/constants/config.constant';
import { ConfigService } from './config/services/config.service';
@Module({
imports: [
WechatPayModule.forRootAsync({
useFactory: (configService: ConfigService) => ({
appId: configService.wechatPay.appId,
mchId: configService.wechatPay.mchId,
apiKeyV3: configService.wechatPay.apiKeyV3,
publicKey: readFileSync(process.cwd() + configService.wechatPay.publicKeyPath),
privateKey: readFileSync(process.cwd() + configService.wechatPay.privateKeyPath)
}),
inject: [CONFIG_PROVIDER]
}),
ConfigModule
]
})
export class AppModule {}
提示:异步注册方式采用的
ConfigModule
并不是NestJS
自带的配置功能,而是我基于官方自己设计的一套,具体实现请参考笔记:NestJS配置模块设计