作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我试图从 lambda 触发阶跃函数,所以我有这个配置:
let DIST_FOLDER = path.join(__dirname, "dist");
export class ServerStack extends cdk.Stack {
constructor(scope: cdk.Construct, id: string, props?: cdk.StackProps) {
super(scope, id, props);
// State Machine code
let executorLambda = new lambda.Function(this, "executorFunction", {
runtime: lambda.Runtime.NODEJS_12_X,
handler: "main.handler",
code: new lambda.AssetCode(path.join(DIST_FOLDER, "executor-lambda")),
timeout: Duration.seconds(60)
});
let executorTask = new Task(this, "executorTask", {
task: new InvokeFunction(executorLambda)
});
let chain = Chain.start(executorTask);
let stateMachine = new StateMachine(this, "executorStateMachine", {
definition: chain
});
// Back-end and api
let backend = new lambda.Function(this, "backend", {
runtime: lambda.Runtime.NODEJS_12_X,
handler: "main.handler",
code: new lambda.AssetCode(path.join(DIST_FOLDER, "backend-lambda")),
environment: {
STEP_FUNCTION_ARN: stateMachine.stateMachineArn
}
});
new apigateway.LambdaRestApi(this, "strest-api", { handler: backend });
}
}
import { StartExecution } from "@aws-cdk/aws-stepfunctions-tasks";
export async function handler(event: any, context: any) {
let env = process.env;
let STEP_FUNCTION_ARN = env.STEP_FUNCTION_ARN || "STEP_FUNCTION_ARN";
let body = JSON.stringify({
msg: "Hello world",
stepFunctionArn: STEP_FUNCTION_ARN
});
let stateMachineExecution = new StartExecution({ // Here I get an error, I don't know how to pass the correct step function arn or resource
stateMachineArn: STEP_FUNCTION_ARN
})
return {
statusCode: 200,
body
};
}
最佳答案
问题似乎出在您的 Lambda 函数中:
import { StartExecution } from "@aws-cdk/aws-stepfunctions-tasks";
StartExecution
您从 CDK 导入的实际上是基础结构构造。为了再次调用 AWS 的 API,您需要 AWS 开发工具包:
import { StepFunctions } from 'aws-sdk'
const stepfunctions = new StepFunctions();
export async function handler(event: any, context: any) {
...
stepfunctions.startExecution({
stateMachineArn: STEP_FUNCTION_ARN,
name: '...',
input: JSON.stringify({msg: 'Hello World!'})
})
...
}
关于typescript - AWS CDK Typescript,如何从 lambda 触发步进函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60512738/
有没有办法在 D 范围内创建一个步骤?例如,在 python 中, 范围(1、10、2)给我 [1, 3, 5, 7, 9] 1 .. 10 以内的所有赔率 有没有办法在 D 中使用
我在 javascript 和 css(没有 jquery 或其他任何东西)中的幻灯片作业有问题。 此幻灯片应该有两种模式,一种是 i) 自动显示图片,另一种是 ii) 手动更改它们。该按钮应分别更改
我有一个在堆栈上声明的结构。这是结构的样子: struct MyStruct { int integer; std::vector booleanVector; }; 当我使用 gdb
我的容器进入第一行,但是当 float 导致第二行开始时,第二行没有进入。如何防止踩踏? HTML echo "". $row["FirstName"]. "" . $day_month .""; C
我们在 VMWare 中运行 Linux Debian。使用 gdb 调试时,如果尝试跨过 memset/memcmp/strcmp 等...,gdb 会返回以下错误: Cannot find bou
我是一名优秀的程序员,十分优秀!