javascript - 在独立的 html 页面中使用 javascript AWS SDK
问题描述
我正在尝试创建一个非常简单的页面来发送 SQL Athena 查询以向我的同事展示我的工作。我真的很想在**独立的 HTML 页面**上保持简单和愚蠢。我不想使用任何 node.js 或其他框架。这不是一个完整的项目,只是一个演示。
我从AWS 文档用法开始,因为 NodeJs 需要require
关键字,所以我找到了一个名为RequireJs的 js 库,它应该可以导入所需的东西aws-sdk/client-athena
。这是小页面:
<html>
<head>
<title>Athena demo</title>
<script type="text/javascript" src="https://requirejs.org/docs/release/2.3.6/minified/require.js"></script>
</head>
<body>
<h1>Athena demo</h1>
<p>Pure javascript powered</p>
<script>
try {
requirejs(["aws-sdk/client-athena"], function(AWS) {
// a client can be shared by different commands.
const client = new AthenaClient({
accessKeyId: "xxxxxxxxxxx",
secretAccessKey: "yyyyyyyyyy",
region: "eu-west-1"
});
const params = {
QueryString: 'Select 1',
OutputLocation: `s3://bucket-name/`,
};
client.send(command).then(function(data) {
console.log('Success');
}).catch(function(err) {
alert(error);
console.log(err);
});
});
} catch (error) {
alert(error);
console.error(error);
}
</script>
</body>
</html>
但是,require.js
似乎无法正常工作,因为我在 javascript 控制台中遇到了这些错误:
require.js:5 GET file:///D:/path/to/project/aws-sdk/client-athena.js net::ERR_FILE_NOT_FOUND
require.js:5 Uncaught Error: Script error for "aws-sdk/client-athena"
https://requirejs.org/docs/errors.html#scripterror
at makeError (require.js:5)
at HTMLScriptElement.onScriptError (require.js:5)
没有 RequireJs,我得到了AthenaClient is not defined
,这很明显,我错过了一些导入。
您是否有任何示例或提示可以在单个脚本中使用 AWS 开发工具包 Athena 客户端,无论是否使用 RequireJs?
解决方案
推荐阅读
- r - 适用于“日期”类对象的 recode() 替代函数
- django - Django 表单的输入字段仅在提交无效表单后显示
- qml - 如何动态更改从 QML 中的 TreeView 中选择的每个项目的视图
- vba - VBA中的行输入文件不前进
- angular - 角度测试:模拟未按预期运行
- javascript - 用JS按顺序显示/隐藏多张图片
- javascript - 在子域 iframe 中更改窗口位置 href
- javascript - 如何在反应中使用地图来创建多个组件?
- node-red - Node-RED:如何在编辑器中迭代所有节点
- kibana - Kibana 度量可视化 - 控制边距/空白