我使用 AWS lambda 作为我的 ElasticSearch 服务的代理。我在代理对Multi search API的请求时遇到问题。由于此端点接受ndjson形式的有效负载,因此我尝试将以下有效负载作为请求正文和Content-Type as application/x-ndjson
. 我尝试了不同的内容类型,但没有用。
{"preference":"SearchResult"}\n
{"query":{"match_all":{}},"size":5,"from":0}
此请求因 JSON 语法错误而失败。
{
"errorType": "SyntaxError",
"errorMessage": "Unexpected token \\ in JSON at position 29",
"trace": [
"SyntaxError: Unexpected token \\ in JSON at position 29",
" at JSON.parse (<anonymous>)",
" at Runtime.handleOnce (/var/runtime/Runtime.js:67:14)"
]
}
此错误是预期的,因为 lambda 试图将请求解析为 JSON。所以很明显,调用没有到达 Lambda 处理函数。如何使 Lambda 函数与 ndjson 一起使用?可能吗?