Claudia Api Builder создает лямбда-функцию, но не добавляет триггер
Я использую Claduiajs для создания лямбда-функций, и я до сих пор выясняю, что она может и не может делать, до сих пор я смогла создать лямбда-функцию, которая подключается к AWS DynamoDB и все работает, как и ожидалось, но когда я пытаюсь добавить в API с помощью Claudia API Builder, следуя этому руководству, триггер не добавляется к лямбда-функции.
Шаги, которые я предпринял после установки npm и установки зависимостей:
Шаг 1: Запишите эту функцию в main.js
:
const AWS = require('aws-sdk'); // Used for DynamoDB
const performance = require('performance-now'); // Used to measure performance
const deepExtend = require('deep-extend'); // Used to deep extend json arrays
const docClient = new AWS.DynamoDB.DocumentClient({region: 'ap-southeast-2'});
const TableName = 'Agent-commands';
var ApiBuilder = require('claudia-api-builder'),
api = new ApiBuilder();
module.exports = api;
api.post('/',function(request){
console.info('request',request);
});
Шаг 2: Запустите эту команду, чтобы создать функцию & api claudia create --name add-command-for-agent --region ap-southeast-2 --api-module main --timeout 10 --policies policies/*.json
Как только я это сделаю, я получаю это в терминале:
saving configuration
{
"lambda": {
"role": "add-command-for-agent-executor",
"name": "add-command-for-agent",
"region": "ap-southeast-2"
},
"api": {
"id": "l223cd1rl7",
"module": "main",
"url": "https://l223cd1rl7.execute-api.ap-southeast-2.amazonaws.com/latest"
}
}
Когда я иду на этот URL, я получаю {"message":"Missing Authentication Token"}
Когда я проверяю claduia.json
файл, который создается командой создания, я не вижу URL там, только идентификатор и модуль.
Когда я проверяю лямбда-функцию на консоли AWS, триггеры не подключаются.
Я что-то делаю не так или это ошибка?
1 ответ
У меня были эти проблемы раньше, и в моем случае роль IAM не имела необходимых разрешений. Я бы перепроверил вашу роль IAM, чтобы убедиться, что у нее есть все необходимые разрешения.