Http-запросы внутри для l oop от angular до node.js API возвращает 404 - PullRequest
0 голосов
/ 15 марта 2020

Я пытаюсь отправить несколько HTTP-запросов непрерывно внутри API для l oop to node.js rest. Ниже описано, как я пытаюсь отправить HTTP-запросы от моего Angular Front-end. getOthersCompletionsByTaskID - это функция, отправляющая HTTP-запрос.

this.tasksService.getTasks().then(res=>{
  let i=0;
  for(i;i< this.tasksService.tasks.length; i++){             
      this.completionService.getOthersCompletionsByTaskID(this.tasksService.tasks[i].TaskId).then(res =>{
        let cArray: any = res;
        console.log("cArray ", cArray)
      })     
  }
  this.dtTrigger.next();
  this.rendMyTasksTable();
})

Ниже приведена моя функция выполнения запроса в API узла.

 function queryGetExecute(qry, params, isMultiSet, callback) {
    var data = [];
    var dataset = [];
    var resultset = 0;
    request = new Request(qry, async function (err, rowCount) {
       utility.sendDbResponse(err, rowCount, dataset, callback);

    });

    params.forEach( param => {
         request.addParameter(param.name, param.type, param.val);
    });

    request.on('row', async function (columns) {
         utility.buildRow(columns, data);
    });

    request.on('doneInProc', async function (rowCount, more, rows) {
        if (isMultiSet == false) {
            dataset =  data;
        } else {
           dataset.push(data);
            data = [];
        }
    });connection.execSql(request)}

Ниже приведена функция в репозиторий, который вызывает вышеуказанную функцию.

function  getCompletionsByFirebaseId(req, res){      
            if (req.params.firebaseId && req.params.taskId) {
                var parameters = [];
                parameters.push({ name: 'firebaseId', type: TYPES.NVarChar, val: req.params.firebaseId});
                parameters.push({ name: 'taskId', type: TYPES.NVarChar, val: req.params.taskId});
                var query = "select users.[name], completedById, [status], completionImage,completionId,exchangeTaskId from Tasks join completions on Tasks.TaskId=completions.taskId join  users  on users.firebaseId = completions.completedById where taskownerId=@firebaseId and Tasks.TaskId = @taskId"
                dbContext.getQuery(query, parameters, false, function (error, data) {
                    if (data) {
                        req.data = data[0];
                        let finaldata =  res.json(response(data, error));
                    return finaldata

                    }else{
                        return res.sendStatus(404);
                    }          
                });

            }else
            {
            return res.sendStatus(404)
            }

    }

Когда я выполняю такие запросы, API возвращает 404. Но первый запрос становится успешным. возвращение запросов на отдых 404. Что я здесь не так делаю?

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