import { Response } from 'express';
import { PassThrough } from 'stream';
import {
Get,
Header,
Res,
} from '@nestjs/common';
const QRCode = require('qrcode');
@Get('getqrcode')
@Header('Content-Type', 'image/png')
generateQRCode(@Res() res: Response): Promise<any> {
const url = 'www.baidu.com';
const qrStream = new PassThrough();
await QRCode.toFileStream(qrStream, url, {
type: 'png',
width: 200,
errorCorrectionLevel: 'H',
});
qrStream.pipe(res);
}
看代碼很容易懂,不過這個有重點,就是
Response
必須從 express 引入的。