elasticsearch アップデートで不明なフィールドエラーが発生する 質問する

elasticsearch アップデートで不明なフィールドエラーが発生する 質問する

Elasticsearch の Typescript クライアントを使用しており、ドキュメントを更新しようとすると次のようになります。

import { RequestParams } from '@elastic/elasticsearch'      
const updateParam: RequestParams.Update = {
      id: '111',
      index: 'myIndex',
      body: {email: '[email protected]'},
}
return elasticsearchClient.update(updateParam)

次のようなエラーが表示されます:

{
    "error": {
        "root_cause": [
            {
                "type": "x_content_parse_exception",
                "reason": "[1:2] [UpdateRequest] unknown field [id], parser not found"
            }
        ],
        "type": "x_content_parse_exception",
        "reason": "[1:2] [UpdateRequest] unknown field [id], parser not found"
    },
    "status": 400
}

しかし、ここにある文書によると:https://www.elastic.co/guide/en/elasticsearch/client/javascript-api/current/api-reference.html#_updateid入力フィールドです

リクエストパラメータに何が問題なのでしょうか?

ベストアンサー1

結局、RequestParams.Update は次のようになります。

const updateParam: RequestParams.Update = {
      id: '111',
      index: 'myIndex',
      body: {doc:{email: '[email protected]'}},
}

したがって、実際のデータは「doc」フィールドでラップされる必要があります。github のライブラリに PR を作成します... ドキュメントだけでは、人々がそれを理解できるはずがありません。

おすすめ記事