use*_*997 5 amazon-web-services aws-lambda aws-api-gateway aws-step-functions aws-http-api
我有一个Type: AWS::Serverless::HttpApi
正在尝试连接到 aType: AWS::Serverless::StateMachine
作为触发器。这意味着 HTTP API 将触发 Step Function 状态机。
我只需指定一个输入就可以让它工作。例如,DefinitionBody
当它工作时,看起来像这样:
DefinitionBody:
info:
version: '1.0'
title:
Ref: AWS::StackName
paths:
"/github/secret":
post:
responses:
default:
description: "Default response for POST /"
x-amazon-apigateway-integration:
integrationSubtype: "StepFunctions-StartExecution"
credentials:
Fn::GetAtt: [StepFunctionsApiRole, Arn]
requestParameters:
Input: $request.body
StateMachineArn: !Ref SecretScannerStateMachine
payloadFormatVersion: "1.0"
type: "aws_proxy"
connectionType: "INTERNET"
timeoutInMillis: 30000
openapi: 3.0.1
x-amazon-apigateway-importexport-version: "1.0"
Run Code Online (Sandbox Code Playgroud)
请注意以下行:Input: $request.body
。我只是指定$request.body
.
但是,我需要能够发送$request.body
和$request.header.X-Hub-Signature-256
。我需要将这两个值作为输入发送到我的状态机。
我尝试过很多不同的方法。例如:
Input: " { body: $request.body, header: $request.header.X-Hub-Signature-256 }"
Run Code Online (Sandbox Code Playgroud)
和
Input:
$request.body
$request.header.X-Hub-Signature-256
Run Code Online (Sandbox Code Playgroud)
和
Input: $request
Run Code Online (Sandbox Code Playgroud)
似乎什么都不起作用。我正在尝试遵循此处的文档:
但似乎没有任何内容表明如何传递多个变量,只有一个。
我每次都会遇到不同的错误,但这是主要的错误:
Warnings found during import: Unable to create integration for resource at path 'POST /github/secret': Invalid selection expression specified: Validation Result: warnings : [], errors : [Invalid source: $request specified for destination: Input].
Run Code Online (Sandbox Code Playgroud)
任何有关如何传递多个值的帮助将不胜感激。
归档时间: |
|
查看次数: |
720 次 |
最近记录: |