为什么我的 API 网关 HTTP 代理 return 404?

Why does my API Gateway HTTP proxy return 404?

我正在尝试设置 API 网关以将所有请求代理到不同的域。我使用下面的 terraform 代码进行设置,一切似乎都已就绪。但是当我尝试调用它时,我得到的只是来自 API 网关的 {"message":"Not Found"}。谁能告诉我我做错了什么?

terraform {
  required_providers {
    aws = {
      source  = "hashicorp/aws"
      version = "~> 4.2.0"
    }
  }
  required_version = ">= 1.1.6"
}

provider "aws" {
  region              = "eu-west-1"
}

resource "aws_apigatewayv2_api" "example" {
  name          = "example"
  protocol_type = "HTTP"
}

resource "aws_apigatewayv2_integration" "example" {
  api_id           = aws_apigatewayv2_api.example.id
  integration_type = "HTTP_PROXY"

  integration_method = "ANY"
  integration_uri    = "https://example.com"
}

resource "aws_apigatewayv2_route" "example" {
  api_id    = aws_apigatewayv2_api.example.id
  route_key = "$default"

  target   = "integrations/${aws_apigatewayv2_integration.example.id}"
}

resource "aws_apigatewayv2_stage" "example" {
  api_id   = aws_apigatewayv2_api.example.id
  name     = "example"
}

我也试过在舞台上添加访问日志记录。日志中没有任何内容,这可能是正在发生的事情的提示。

PS。我知道还有其他方法可以做到这一点,例如 CloudFront。不幸的是,在这种特殊情况下,它 必须 成为 API 网关。

原来我错过了一个部署。最简单的起床方式 运行:

resource "aws_apigatewayv2_stage" "example" {
  api_id      = aws_apigatewayv2_api.example.id
  name        = "example"
  auto_deploy = true
}