ElasticSearch erreur lors de l'envoi de données
J'essaie d'envoyer un JSON à elasticSearch. J'ai essayé d'utiliser le Facteur et SOAPUI
Les données sont
[{"column1": "abc", "column2": "def", "column3": "dghi", "column4": "jkl", "column5": "mno"}, {"column1": "pqr", "column2": "stu", "column3": "vwx", "column4": "", "column5": ""}]
J'obtiens l'erreur suivante retour
{
"error": {
"root_cause": [
{
"type": "mapper_parsing_exception",
"reason": "failed to parse"
}
],
"type": "mapper_parsing_exception",
"reason": "failed to parse",
"caused_by": {
"type": "not_x_content_exception",
"reason": "Compressor detection can only be called on some xcontent bytes or compressed xcontent bytes"
}
},
"status": 400
}
Mais quand je poste un seul tableau JSON I. e.
{"column1": "abc", "column2": "def", "column3": "dghi", "column4": "jkl", "column5": "mno"}
Puis il fonctionne très bien. Je suis nouveau sur ElasticSearch donc pas sûr que ce qui ne va pas.
Vous devez vous connecter pour publier un commentaire.
Essayez d'utiliser des accolades en premier, puis nommer le tableau. Essayer et voir si cela fonctionne.
Par exemple:
peut travailler parce que c'est contenue à l'intérieur d'un objet.
Mieux encore, tandis que je faisais des expériences avec
JSON.stringify();
, j'ai trouvé qu'il transforme des tableaux JSON comme suit:merci @hellol11
il a travaillé quand j'ai changé de
J'ai récemment rencontré ce à l'aide de curl et c'était une simple faute de frappe. Je n'étais pas en ligne json, mais à partir d'un fichier. J'ai oublié d'inclure le signe @ avant le nom de fichier.
J'ai eu ce problème à l'intérieur d'un script Python (à l'aide de requêtes) pour essayer de le POSTER à l'ES. La résolution a été tout simplement de convertir l'objet json à l'aide de la chaîne
json.dumps()
Exemple (Python snipit):
Dans l'environnement Windows, j'ai résolu ce problème.
et surround nom avec barre oblique inverse plus de double quotaton(\")
commande>
Dans elastic search ,si vous voulez envoyer des données en vrac, puis chaque objet de la liste doit être en ligne .donc, si vous utilisez un sens puis de faire tout ce Nouvelle ligne ou en cas d'utilisation de code puis ajouter le caractère de Nouvelle ligne \n...
J'avais la même erreur lors de la tentative de poste à elasticsearch mais l'utilisation de node js. J'ai utilisé le nœud-extraction du colis pour faire une demande d'elasticsearch. C'était bizarre parce que en utilisant exactement la même chose sur postman je n'ai pas d'erreur mais j'obtenais l'erreur sur node js. Au départ, j'étais en train de faire:
S'avère que l'erreur a corrigé quand je l'ai changé pour: