Ошибка 'statemacine не может быть назначена параметру типа AwsIntegrationProps' относится к вашему экземпляру.
AwsIntegration
класс принимает AwsIntegrationProps
struct as input.
new AwsIntegration(props: AwsIntegrationProps)
Получение API Gateway для запуска Step Функции напрямую немного странны. Я нашел это Учебное пособие по созданию API-функций с использованием API Gateway полезным. Конечный автомат ARN передается в теле запроса вызова, поэтому вам нужно передать шаблон запроса, если вы не хотите, чтобы пользователь указывал конечный автомат.
resource.addMethod(
method,
new apigw.AwsIntegration({
handler: 'states',
action: 'StartExecution',
options: {
requestTemplates: {
'application/json': `{
"stateMachineArn": "${handler.ref}",
"input": "$util.escapeJavaScript($input.body)"
}`
},
},
}),
{ apiKeyRequired: true }
);
(Примечание: Я перевожу свой код с Python, поэтому я не на 100% использую строки в TypeScript.)
Я также заполнил credentialsRole, passthroughBehavior иgrationResponses для параметров, чтобы получить мои настройки так, как я хотел.