Отправка (Ответ) данных (Obj) с узла на Angular с использованием POST - PullRequest
0 голосов
/ 26 ноября 2018

Что я пытаюсь выполнить?

-> Я выполнил запрос на вход, если запрос на вход в систему истинен, то отправьте роль определенного пользователя.Итак, я выполняю 2 запроса, один для проверки и другой для отправки роли пользователя. Я могу сохранить роль в объекте, но не могу отправить этот объект в Angular. Я пытался использовать res.json (obj(['key'])), res.end (JSON.stringify (obj ['Key']));никто из них не работает.Любые другие методы?

Код:

var Role_id = {
  Role: ''
};

router.post('/login', function(req, httpres, next) {
      console.log("Inside the login api");
      const username = req.body.username;
      const password = req.body.password;
      console.log(username, password)
      pool.query(" select exists(SELECT username FROM users WHERE username = $1 AND password = $2 ) ", [username, password])
        .subscribe(
          data => {
            console.log('success', data)
            if (data.rows[0].exists) {
              httpres.json({
                status: true,
                message: 'Login  Succesfully',
                parameters: req.body
              });
              var re = ("SELECT role_id from users where username ='" + username + "'  AND  password = '" + password + "'")
              console.log(" re ", re)
              pool.query("SELECT role_id from users where username ='" + username + "' AND  password = '" + password + "'")
                .subscribe(
                  data => {
                    console.log("data anonymous...", data.rows[0].role_id)
                    Role_id['Role'] = data.rows[0].role_id;
                    console.log("This data has to be read", Role_id['Role']);
                    //  httpres(JSON.stringify(Role_id['Role']));
                    // httpres.json(Role_id['Role']);
                    httpres.send(Role_id['Role']);
                    //    httpres.json({
                    //     parameters:req.Role_id['Role']
                    //   });
                  }, err => {
                    httpres.send('error');
                  }
                }
              else {
                httpres.send('error');
              }

            }, err => {
              console.log('error', err)
              httpres.send('error');
            })
        });

1 Ответ

0 голосов
/ 26 ноября 2018

Я думаю, проблема в том, что вы пытаетесь отправить ответ дважды, а это невозможно.Вы можете отправить только один ответ.Возможно, вы получаете ответ от этого кода: httpres.

json({
   status: true,
   message: 'Login  Succesfully',
   parameters: req.body
});

, но не от следующих кодов.Итак, если вам нужно отправить всю информацию в ответе, вы должны добавить ее к одному объекту и отправить весь объект в конце.Другой случай не сработает.

Дайте мне знать, если это поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...