API Gateway와 백엔드 간의 통신 확인으로 시간을 낭비하지 않는 절차

1925 단어 APIGatewayAWS
API Gateway(HTTP API)의 소통 확인은 단계별로 진행하지 않으면 혼란스러워집니다.
요청이 백엔드에 도달할 때까지 각 단계의 조사 방법을 요약했습니다.

API 게이트웨이 → 백엔드 요청 해결 순서


  • 사용자 지정 도메인을 Stage별 Invoke URL로 확인합니다.
  • 스테이지에 지정된 자원에 대한 액세스 권한이 있는지 확인합니다.
  • 메서드 요청을 실행하기위한 인증 수행
  • 메소드 요청을 수락한 후 API Gateway에서 백엔드(예: AWS Lambda)로 통합 요청 수행(종료)

  • 1. 사용자 지정 도메인을 Stage별 Invoke URL로 확인



    보통 dig하여 CNAME 레코드가 반환되는지 확인하십시오.
    여기에 실패하면 당연하지만 원래 API에서 응답이 반환되지 않습니다.

    2. 스테이지에 지정된 리소스에 대한 액세스 권한이 있는지 확인합니다.



    통신 확인을 위해 API Gateway Stage에서 Enable CloudWatch Logs를 사용하도록 설정해야 합니다.
    CloudFormation에서 설정한 경우TracingEnabled: true에서 활성화됩니다.



    그런 다음 일반적으로 curl 또는 Postman에서 API에 액세스하십시오.
    내가 자주 발생하는 오류는 다음과 같습니다.

    Missing Authentication Token



    API Gateway에서 지정한 리소스가 없을 때 표시됩니다.
    요약하면 URL이나 메소드가 잘못되었거나 API Gateway 리소스 정책이 잘못되었습니다.
    {
        "message": "Missing Authentication Token"
    }
    

    3. 메소드 요청 실행을 위한 인증 수행



    메소드 요청을 실행하지 못했을 때 자주 발생하는 오류는 다음과 같습니다.

    Forbidden



    예를 들어 API_KEY가 잘못되었습니다.
    {
        "message": "Forbidden"
    }
    

    The security token included in the request is invalid



    메소드 요청의 Authorizer를 IAM에 지정하고 AWS 세션이 만료된 경우입니다.
    {
        "message": "The security token included in the request is invalid"
    }
    

    4. 메소드 요청을 수락한 후 API Gateway에서 백엔드(예: AWS Lambda)로 통합 요청을 수행합니다.



    여기까지 오면 나중에 API Gateway 자체의 CloudWatch Logs에서 디버깅할 수 있습니다.

    API Gateway에 Lambda를 실행할 수 있는 권한이 없는 경우 등을 잘 수행할 수 있습니다.

    좋은 웹페이지 즐겨찾기