gpt4 book ai didi

javascript - 在 Elasticsearch 中,为什么我的多行脚本不起作用?

转载 作者:行者123 更新时间:2023-12-02 23:46:09 27 4
gpt4 key购买 nike

我正在使用 Elasticsearch JavaScript API。

以下脚本可以正常运行,不会出现错误:

const script = {
"lang": "painless",
"source": `
for (int i = 0; i < ctx._source.metadata.length; ++i) {
}
`,
};

但是当我尝试使用三个双引号时,如下例所示:

https://www.elastic.co/guide/en/elasticsearch/painless/master/painless-examples.html#_accessing_doc_values_from_painless

(因为我的脚本将是一个复杂的多行脚本),我将代码修改为:

const script = {
"lang": "painless",
"source": `
"""
for (int i = 0; i < ctx._source.metadata.length; ++i) {
}
"""
`,
};

然后我收到以下错误:

"reason\":\"unexpected token ['\\"\\n for (int i = 0; i < ctx._source.metadata.length; ++i) {\\n }\\n \\"'] was expecting one of [{, ';'}].\"}},\"status\":500}"}

如何解决这个问题?

最佳答案

在 JavaScript 中,多行字符串可以用 `.不需要“”。您引用的文档不适用于 JavaScript。

... because my script is going to be a complex multi-line one

...但是您的第一个示例还显示了多行代码并且可以工作吗?

关于javascript - 在 Elasticsearch 中,为什么我的多行脚本不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55857942/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com