我正在使用 typescript 和 aws-sdk 编写一个节点应用程序来调用 Athena。有时,对 Athena 的调用会在等待 Athena 响应一分钟后超时。我不明白的是,如果我转到 AWS 控制台并查看 Athena History 选项卡,它说我的查询需要 4 秒才能成功,但在我的代码中,它运行了超过一分钟等待响应。我希望我的代码中有什么地方做错了。
myFunct... {
const athena = getAthena();
const startQueryExecutionResponse: StartQueryExecutionOutput = await athena.startQueryExecution(params).promise();
let status = "UNKNOWN";
do {
await sleep(1000);
status = await getQueryStatus(athena, startQueryExecutionResponse);
} while (status === "QUEUED" || status === "RUNNING");
return await athena.getQueryResults(startQueryExecutionResponse as GetQueryResultsInput).promise();
};
const sleep = (ms: number) => {
return new Promise(resolve => {
setTimeout(resolve, ms)
})
};
const getQueryStatus = async (athena: AWS.Athena, startQueryExecutionResponse: …
Run Code Online (Sandbox Code Playgroud) URLLoader.load建立的连接是否超时?如果存在,它的价值是什么,它在哪里记录并且可以改变?此外,如果发生超时,会调度哪些事件(如果有)?在这些方面,AIR和浏览器应用程序之间是否存在差异?