У меня есть объект с данными, и я хочу отправить эти данные в эластичный контейнер поиска
for(let key in params)
{
bulk.push(JSON.stringify({
index: {
_id: params[ key ][ 'id' ],
_type: 'id',
_index: 'geo'
}
}));
bulk.push(JSON.stringify(params[key]));
}
let bulks = bulk.join("\n") + "\n";
Я сделал запрос
let cat = request(
{
'method' : 'PUT',
'uri' : 'http://dev4.int10h.net:40024/_bulk',
'body' : bulks ,
'json' : true,
'headers':
[
'Content-Type: application/x-ndjson'
],
'agent' : false
}
);
но есть ошибка
Необработанное отклонение StatusCodeError: 400 - {"error": {"root_cause": [{"type": "invalid_argument_exception", "reason": "Массовый запрос должен быть завершен новой строкой [\ n]"}] , "type": "invalid_argument_exception", "reason": "Массовый запрос должен быть завершен новой строкой [\ n]"}, "status": 400 }
в новом StatusCodeError (/usr/lib/node_modules/request-promise/node_modules/request-promise-core/lib/errors.js:32:15)
at Request.plumbing.callback (/usr/lib/node_modules/request-promise/node_modules/request-promise-core/lib/plumbing.js:104:33)
при обратном вызове Request.RP $ [as _callback] (/usr/lib/node_modules/request-promise/node_modules/request-promise-core/lib/plumbing.js:46:31)
на Request.self.callback (/usr/lib/node_modules/request/request.js:185:22)
at Request.emit (events.js: 182: 13)
по запросу. (/Usr/lib/node_modules/request/request.js:1161:10)
at Request.emit (events.js: 182: 13)
на входящем сообщении. (/Usr/lib/node_modules/request/request.js:1083:12)
в Object.onceWrapper (events.js: 273: 13)
на IncomingMessage.emit (events.js: 187: 15)
в endReadableNT (_stream_readable.js: 1098: 12)
at process.internalTickCallback (internal / process / next_tick.js: 72: 19)
Как правильно отправить рассылку?
тип сыпучих материалов string