Как отправить параметр (id) в запросе HTTP $ ajax http? - PullRequest
0 голосов
/ 12 апреля 2020

Сценарий

У меня была проблема в течение 4 часов, я пытаюсь отправить запрос http get при отправке идентификатора пользователя в качестве параметра. Я пробую множество примеров, найденных на net, но у меня все еще есть эта ошибка на стороне сервера.

GET http://localhost:3000/api/users/getusersbyid/?userId=00c1308a-32ad-48a0-8737-d4682b2b504e 500 (Internal Server Error)

Вот мой JS код функции:

async function getUserById() {
   try {
      await $.ajax({
         type: "GET",
         url: "http://localhost:3000/api/users/getusersbyid",
         data: {
            userId: "00c1308a-32ad-48a0-8737-d4682b2b504e"
         },
         contentType: "application/x-www-form-urlencoded"
      }).done(function(response) {
         console.log(response);
      }).fail(function(err) {
         console.log(err);
      });
   } catch (error) {
      console.log(error);
   }
}

Вот мой Бэкэнд код функции с использованием NodeJs:

getUserById: function(req, res) {
   let userId = req.body.userId;
   models.User.findOne({
      where: {
         id: userId
      },
      include: [{
         model: models.TypeUser,
         attributes: ['code', 'value']
      }]
   }).then(function(data) {
      if (data) {
         res.status(201).json({
            'status': 'success',
            'code': 201,
            'data': data
         });
      } else {
         res.status(404).json({
            'status': 'falled',
            'code': 404,
            'message': 'Unable to find one or more users'
         });
      }
   }).catch(function(err) {
      res.status(500).json({
         'status': 'falled',
         'code': 500,
         'message': 'An internal error has occurred',
         'data': err
      });
   });
}

Вот мой Бэкэнд Сообщение об ошибке image:

Нужна ваша помощь и предложения

Ответы [ 2 ]

0 голосов
/ 12 апреля 2020

Я только что решил проблему после прочтения ответов от @ AbhishekKumawat и от @ Pointy . Поэтому, используя метод " GET ", я должен сделать это:

let userId = req.query.userId;

.

let userId = req.body.userId;
0 голосов
/ 12 апреля 2020

Кажется, что-то происходит в вашем бэкэнде. Вы пытались использовать ведение журнала, например, после того, как ваш "let userId = req.body.userId;" строка, чтобы увидеть, получает ли ваш сервер идентификатор пользователя?

console.log("backend received userId="+userId)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...