javascript - 使用 AWS API Gateway 在我的 AWS lambda 函数(将在 dynamo db 中存储数据)面临的前端问题
问题描述
我正在从事一个自动化项目,我必须为我的 AWS Lambda 函数设计一个前端,该函数将在我的 AWS Dynamo DB 表中创建一个条目。我正在使用 AWS HTTP API Gateway 在前端和 lambda 函数之间创建链接。仅供参考,我的后端,即 lambda 函数和 API URL 工作正常,因为我通过 Postman 进行了检查。我可以通过 Postman 通过 dynamo DB 中的 API 发送数据。所以我知道那里没有错,只是我关心前端。
前端代码:
<html>
<body>
<h2>Project Automation</h2>
<div id="entries">
</div>
<form>
<label for="projectId">Id:</label><br>
<input type="text" id="Id"><br>
<label for="name">Project Name:</label><br>
<input type="text" id="name"><br><br>
<button id="submitButton">Submit</button>
</form>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.0/jquery.min.js"></script>
<script type="text/javascript">
$('#submitButton').on('click', function() {
$.ajax({
type: 'POST',
dataType: "json",
url: 'https://1wuscm3kr7.execute-api.us-east-1.amazonaws.com/prod/entries',
contentType: "application/json",
data: JSON.stringify({"Id": $('#Id').val()}),
data: JSON.stringify({"name": $('#name').val()}),
success: function(data) {
location.reload();
}
});
return false;
});
</script>
</body>
</html>
拉姆达函数:
console.log('starting function');
const AWS = require('aws-sdk');
const docClient = new AWS.DynamoDB.DocumentClient({region: 'us-east-1'});
exports.handler = function(e, ctx, callback) {
var params = {
Item: {
projectId: e.projectId,
code: e.code,
name: e.name,
license: e.license
},
TableName: 'ProjectTest'
};
docClient.put(params, function(err, data) {
if(err) {
callback(err, null);
} else{
callback(null, data);
}
});
}
任何帮助将不胜感激。谢谢!
解决方案
推荐阅读
- wordpress - 在插件功能中更改图像
- javascript - 尝试将函数转换为更实用的样式
- keras - model.load_weights() 不会恢复优化器的内部状态
- javascript - 根据鼠标点击移动和旋转对象?
- java - 无法使用来自 intelliJ 的 java 中的 PreparedStatement 在 postgresql 中插入值
- c++ - 使用 (float&)int 键入双关语有效, (float const&)int 转换为 (float)int 代替?
- java - 由于有 JSoup,无法在 cmd 终端中找到或加载主类
- swift - UIAlertController 在某些情况下不会被解雇
- nginx - Nginx 未在成功验证时重定向到 url
- python - 如何将多个泡菜文件放在一个泡菜文件中