Как я могу обновить представление (в node js) с полезной нагрузкой, полученной от webhook? - PullRequest
0 голосов
/ 13 апреля 2020

Я работаю над проектом express js. Я настроил webhook, и я получаю запрос на публикацию в моем файле индекса. js. Теперь я хочу обновить индексное представление с полученной полезной нагрузкой. Я пробовал res.render и даже пытался перенаправить в другое тестовое представление, но это не сработало. Есть ли способ сделать это? Или я должен сохранить его в БД и получить его снова? Любая помощь будет оценена.

Вот фрагмент из моего индекса. js file

/* GET home page. */
router.get('/', function(req, res, next) {
  res.render('index', { message: 'Testing-initial'});
});

//capture webhooks
router.post('/', function (req, res) {
    msgText = req.body.messages[0].text;
    console.log('meg received from channel' + msgText);    
    res.render('index', { message: msgText });   
});

Ниже приведен мой layout.hbs

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, shrink-to-fit=no">
    <title>...</title>
    <link href="assets/css/style.css" rel="stylesheet" type="text/css" />  
</head>

<body class="alt-menu sidebar-noneoverflow">
    {{{body}}}

    <!-- BEGIN GLOBAL MANDATORY SCRIPTS -->
    <script src="assets/js/libs/jquery-3.1.1.min.js"></script>
    <script src="bootstrap/js/popper.min.js"></script>
    <script src="bootstrap/js/bootstrap.min.js"></script>
    <script src="plugins/perfect-scrollbar/perfect-scrollbar.min.js"></script>
    <script src="assets/js/app.js"></script>


    <script>
        $(document).ready(function () {
            App.init();
        });
    </script>
    <script src="assets/js/custom.js"></script>
    <!-- END GLOBAL MANDATORY SCRIPTS -->
    <!-- BEGIN PAGE LEVEL SCRIPTS -->
    <script src="assets/js/apps/mailbox-chat.js"></script>
    <!-- END PAGE LEVEL SCRIPTS -->
</body>
</html>

Я думаю, У меня нет проблем с этим, так как я могу получить дом с введенным в него текстом Testing-initial.

И последнее замечание: раньше я пытался добиться этого с помощью WebSockets, и это сработало, но я столкнулся с другим проблема, из-за которой отсутствуют полезные данные, которые появляются, когда нет соединения с сокетом. Поэтому я пытаюсь сделать это без socket.io

...