gpt4 book ai didi

javascript - Cosmos DB 查询可以在 Data Explorer 中运行,但不能在 Node.js 中运行

转载 作者:行者123 更新时间:2023-12-02 23:38:56 25 4
gpt4 key购买 nike

我正在尝试使用 Node.js 对我的 cosmos 数据库运行以下查询。

const querySpec = {
query: "SELECT * FROM Users u WHERE u.id = @email",
parameters: [
{
name: "@email",
value: "<a href="https://stackoverflow.com/cdn-cgi/l/email-protection" class="__cf_email__" data-cfemail="cdb9a8beb9b8bea8bf8daaa0aca4a1e3aea2a0" rel="noreferrer noopener nofollow">[email protected]</a>"
}
]
};

const { result: results } = client.database(databaseId).container(containerId).items.query(querySpec).toArray();
if (results.length == 0) {
throw "No matching user";
} else if (results.length > 1) {
throw "Account found";
}

const user = results[0];
console.log(user);

但是我不断收到错误TypeError:结果未定义。该查询在数据浏览器中运行良好。如果我使用 console.log,databaseIdcontainerId 会打印我需要的值。

为什么我会收到此错误?

最佳答案

我相信您收到此错误的原因是 query 是一个 async 方法,而您没有等待它。您可以尝试更改以下代码行:

const { result: results } = client.database(databaseId).container(containerId).items.query(querySpec).toArray();

至:

const { result: results } = await client.database(databaseId).container(containerId).items.query(querySpec).toArray();

看看这是否可以解决问题。

关于javascript - Cosmos DB 查询可以在 Data Explorer 中运行,但不能在 Node.js 中运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56162063/

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