【问题标题】:AWS Lambda API Application .Net Core Not respondingAWS Lambda API 应用程序 .Net Core 没有响应
【发布时间】:2020-07-16 15:41:55
【问题描述】:

我使用 AWS Toolkit for .Net Core 3.1 创建了一个 AWS Lambda 应用程序 API。它有 2 个 Get 请求,在请求正文中期望文本 JSON 并返回文本 JSON 作为输出。它不需要任何数据库连接或任何其他 AWS 资源。本地一切正常,所有测试都通过了。我使用运行 Cloud Formation 设置文件的 AWS Toolkit 将我的应用程序发布到 AWS 账户,同样没有问题,全部通过。这将使用我的 API 端点创建我的 AWS Lambda API 应用程序。但是,当我尝试使用时,我收到 "403 Forbidden" 错误:

我注意到的另一件事是默认 API 网关类型是 Edge,我不确定这是否会造成问题。我想将它设置为私有云形成从 .Net 核心级别卡住。我认为这里有一些需要改变的地方:

{
  "AWSTemplateFormatVersion": "2010-09-09",
  "Transform": "AWS::Serverless-2016-10-31",
  "Description": "An AWS Serverless Application that uses the ASP.NET Core framework running in Amazon Lambda.",
  "Resources": {
    "AspNetCoreFunction": {
      "Type": "AWS::Serverless::Function",
      "Properties": {
        "Handler": "AES.Protocol::AES.Protocol.LambdaEntryPoint::FunctionHandlerAsync",
        "Runtime": "dotnetcore3.1",
        "CodeUri": "",
        "MemorySize": 256,
        "Timeout": 30,
        "Role": null,
        "Policies": [
          "AWSLambdaFullAccess"
        ],
        "Events": {
          "ProxyResource": {
            "Type": "Api",
            "Properties": {
              "Path": "/{proxy+}",
              "Method": "ANY"
            }
          },
          "RootResource": {
            "Type": "Api",
            "Properties": {
              "Path": "/",
              "Method": "ANY"
            }
          }
        }
      }
    }
  },
  "Outputs": {
    "ApiURL": {
      "Description": "API endpoint URL for Prod environment",
      "Value": {
        "Fn::Sub": "https://${ServerlessRestApi}.execute-api.${AWS::Region}.amazonaws.com/Prod/"
      }
    }
  }
}

之前与此 API 相关的 question 可能会有所帮助。

【问题讨论】:

    标签: amazon-web-services api asp.net-core aws-lambda


    【解决方案1】:

    我设法找到了解决方案。 CloudFront 似乎不支持带有“body”的 GET 请求。因此将“GET”更改为“POST”请求可以解决问题。

    【讨论】:

      猜你喜欢
      • 2019-10-07
      • 1970-01-01
      • 1970-01-01
      • 2018-05-16
      • 1970-01-01
      • 2020-07-03
      • 2020-12-12
      • 2019-07-07
      • 1970-01-01
      相关资源
      最近更新 更多