Node js - партии Одата - PullRequest
       5

Node js - партии Одата

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

Мне нужно вызвать службу oData для операции HTTP POST. В настоящее время я отправляю их партиями по 1000 штук, вызывая все партии за раз. Но есть проблема из-за одновременных пакетов, когда таблица блокируется. Поэтому я хотел бы отправить, используя $ batch с набором изменений. Но я не уверен, как вызвать службу Odata с помощью Changeset in Node.

Текущий код для пакетов.

const parallel = async(headers, input) => {
     let payload = [],
        items = [],
        header ;

    const sendreq = async (headers, request, i) => {
         //sending request
    }


    for (var i = 0, len = input.ITEM.length; i < len; i += 1000) {
        items.push(input.ITEM.slice(i, i + 1000));

    }
    for (i = 0; i < items.length; i++) {
        header.ITEM= items[i];
        payload.push(header)
        header = {}
    }
    let j = 0;
    const batches = Array(Math.ceil(input.ITEM.length / 1000)).fill(Array(1).fill(sendreq))

    for (const batch of batches) {
            await Promise.all(batch.map(f => f(headers, payload, j++)))

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