5

私は現在、Serveless Framework を使用して新しいアプリケーションを作成しており、API ゲートウェイで同じラムダ関数を複数の HTTP メソッド (GET および POST など) にマップしたいと考えていましたが、これを行う方法に行き詰まりました。

以下は、apiGateway 構成のデフォルトのリソース/アクション エンドポイントに対して、サーバーレス フレームワークが awsm.json で生成したものです。

"apiGateway": {
"deploy": false,
"cloudFormation": {
  "Type": "AWS",
  "Path": "notify/event",
  "Method": "POST",
  "AuthorizationType": "none",
  "ApiKeyRequired": false,
  "RequestTemplates": {},
  "RequestParameters": {},
  "Responses": {
    "400": {
      "statusCode": "400"
    },
    "default": {
      "statusCode": "200",
      "responseParameters": {},
      "responseModels": {},
      "responseTemplates": {
        "application/json": ""
      }
    }
  }
}

}

これにより、エンドポイントは POST リクエストを受け入れることができますが、このファイルを変更して、このラムダが GET リクエストも受け入れるようにするにはどうすればよいでしょうか? 私は次のことを試しました:

"cloudFormation": {
  ...
  "Method": [ "POST", "GET" ],
  ...
}

"cloudFormation": {
  ...
  "Method": "POST,GET",
  ...
}
4

1 に答える 1

1

これは現在サポートされていません (v1.4 時点)。これは議論されている既知の問題 ( https://github.com/jaws-framework/JAWS/issues/295 ) であり、同様のものがロードマップにあります。

今のところ、ルートとメソッドごとに個別の .awsm を作成する必要があります

于 2015-11-30T07:44:00.697 に答える