Nest搭建(3)
nest 其他配置

jwt
import { ExtractJwt, Strategy } from 'passport-jwt';
import { Injectable } from '@nestjs/common';
import { PassportStrategy } from '@nestjs/passport';
import { ConfigService } from '@nestjs/config';
@Injectable()
export class JwtStrategy extends PassportStrategy(Strategy) {
constructor(private readonly config: ConfigService) {
super({
jwtFromRequest: ExtractJwt.fromAuthHeaderAsBearerToken(),
ignoreExpiration: false,
secretOrKey: config.get('jwt.key'),
});
}
async validate(payload: any) {
return { userId: payload.sub };
}
}
config
import { readFileSync } from 'fs';
import * as yaml from 'js-yaml';
import { join } from 'path';
import { Config } from './config.interface';
const env = process.env.NODE_ENV || 'local';
// console.log(process.env.NODE_ENV);
export default () => {
return yaml.load(readFileSync(`src/env/${env}.yml`, 'utf8')) as Config;
};
imports: [
ConfigModule.forRoot({
cache: true,
load: [configuration],
isGlobal: true,
}),
],
评论 (0)