Передать переменную с сгенерированным паролем из бэкэнда во внешний интерфейс - PullRequest
0 голосов
/ 09 марта 2020

Я пытаюсь передать свою переменную с сгенерированным паролем на мою внешнюю сторону.

Я думаю, что моя основная проблема заключается в том, что я генерирую пароль по маршруту

. post

это мой кусок fileUpload.route.ts

router.post('/upload-file', upload.array('file', 6), (req:any, res:any, next:any) => {
//...
genPass();
}

Inside genPass () is

let password = generator.generate({
  length: 10,
  numbers: true
});

Я пытался сделать

module.exports = router, genPass;

и

router.get('/getpassword', fileController.fileGeneratedPassword);

Затем внутри моего контроллера

const password = require('../routes/fileUpload.route');

class FileController {
  public async fileGeneratedPassword(req: Request, res: Response): Promise<void> {
        console.log('pass: ' + JSON.stringify(password));
        res.json(password);
    }
}

Но console.log всегда пуст.

Как мне передать эту переменную?

Я думаю, что я должен сгенерировать пароль внутри router.post , потому что когда я загрузить в мой файл внешнего интерфейса, а затем я хочу создать пароль для «шифрования файла».

Я хочу отобразить сгенерированный пароль в моем Angular интерфейсе

1 Ответ

0 голосов
/ 09 марта 2020

module.exports возвращает одно значение. Вы можете вернуть объект, если хотите, но я бы разделил их на 2 файла

генератор

function genPass() {
    return generator.generate({
        length: 10,
        numbers: true
    });
}

module.exports = genPass

контроллер

const genPass = require('generator');

class FileController {
  public async fileGeneratedPassword(req: Request, res: Response): Promise<void> {
        const password = genPass()
        console.log('pass: ' + JSON.stringify(password));
        res.json(password);
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...