AWSラムダ関数として正常に公開したC#メソッドがあります。AWS APIゲートウェイのクエリーストリング値をラムダC#関数に渡す方法
public class MyClass
{
public async Task<APIGatewayProxyResponse> Test(APIGatewayProxyRequest request, ILambdaContext context)
{
return new APIGatewayProxyResponse
{
Body = "Body: " + request.Body
+ Environment.NewLine
+ "Querystring: " + (request.QueryStringParameters == null ? "null" : string.Join(",", request.QueryStringParameters.Keys)),
StatusCode = 200
};
}
}
私は、Webインターフェイスを介して私のAPIゲートウェイを設定するには、次のことを行っている:それはこのようになります
- 名「MyClassの」との新しいリソースを作成した新しいAPI
- を作成し、パス "/ myclass"
- リソースの新しいGETメソッドを作成しました。統合型として "Lambda Function"を使用し、ラムダ関数を指しています。
私は(要求で指定した任意のヘッダを渡さずに)このように私のラムダ関数を呼び出すことができるようにしたい: https://xxx.execute-api.us-east-2.amazonaws.com/prod/myclass?paramA=valueA¶mB=valueB
私は私のクエリ文字列パラメータはラムダに通過するために取得する方法がわかりませんよ関数。何を試しても、request.QueryStringParametersは常にnullです。
ここから正しい手順は何ですか?
こんにちは、これは私が試したことの1つです。私の体マッピングテンプレートやラムダ関数にそれをどのように正確に含めることができるかを具体的に教えてください。 – cbp
見てください、https://aws.amazon.com/blogs/compute/using-api-gateway-mapping-templates-to-handle-changes-in-your-back-end-apis/ –
うーんリンクが古くなっています - 記事が書かれた後、AWSのインターフェースが2016年に変更されたと思います。残念ながら、これらの命令に従うと、同じNullReferenceExceptionが発生します。 – cbp