我正在運行 azure 檔案中官方教程中的 node.js 控制臺應用程式。請找到以下鏈接: https ://docs.microsoft.com/en-us/azure/cosmos-db/sql/sql-api-nodejs-get-started 代碼如下:
const cosmos = require("@azure/cosmos");
const CosmosClient = cosmos.CosmosClient;
const endpoint = "******"; // Add your endpoint
const masterKey = "******"; // Add the masterkey of the endpoint
const client = new CosmosClient({ endpoint, auth: { masterKey } });
const databaseId = "brondbid"; // Add the Database ID
const containerId = "broncollectid"; // Add the Container ID
const querySpec = {
query: "SELECT * FROM c"
};
async function run() {
const { result: results } = await client.database(databaseId).container(containerId).items.query(querySpec, { enableCrossPartitionQuery: true }).toArray();
for (var queryResult of results) {
let resultString = JSON.stringify(queryResult);
console.log(`\tQuery returned ${resultString}\n`);
}
}
async function handleError(error) {
console.log("\nAn error with code '" error.code "' has occurred:");
console.log("\t" error.body || error);
}
run().catch(handleError);
當我在終端運行 node app.js 時,我收到了這個錯誤。
An error with code 'undefined' has occurred:
undefined
uj5u.com熱心網友回復:
請嘗試以下代碼:
const cosmos = require("@azure/cosmos");
const CosmosClient = cosmos.CosmosClient;
const endpoint = "******"; // Add your endpoint
const masterKey = "******"; // Add the masterkey of the endpoint
const client = new CosmosClient({ endpoint, key: masterKey });
const databaseId = "brondbid"; // Add the Database ID
const containerId = "broncollectid"; // Add the Container ID
const querySpec = {
query: "SELECT * FROM c"
};
async function run() {
const database = client.database(databaseId);
const container = database.container(containerId);
const { resources: results } = await container.items.query(querySpec, { enableCrossPartitionQuery: true }).fetchAll();
for (var queryResult of results) {
let resultString = JSON.stringify(queryResult);
console.log(`\tQuery returned ${resultString}\n`);
}
}
function handleError(error) {
console.log(error);
console.log("\nAn error with code '" error.code "' has occurred:");
console.log("\t" error.body || error);
}
run().catch(handleError);
本質上,您的代碼失敗了,因為查詢結果沒有.toArray()可用的方法。由于它不是 REST API 錯誤,因此您將獲得undefinedfor 錯誤代碼。
此外,查詢回傳鍵中的資料,resources而不是result您使用的鍵。
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/441697.html
標籤:节点.js 天蓝色 天蓝色宇宙数据库 天蓝色 cosmosdb-sqlapi
