HTTP 트리거
Cloud Functions에서 HTTP 트리거는 HTTP(S) 요청에 대한 응답으로 함수를 실행할 수 있습니다. 함수에 대해 HTTP 트리거를 지정할 때는 요청을 수신할 수 있는 URL이 함수에 할당됩니다. HTTP 트리거는 GET
, POST
, PUT
, DELETE
, OPTIONS
요청 메서드를 지원합니다.
Cloud Functions(2세대)에서 함수 URL에 대한 요청에는 항상 HTTPS가 필요합니다. Cloud Functions(1세대)에서는 배포 중 HTTPS가 필요한지 여부를 선택할 수 있습니다.
기본적으로 HTTP 트리거의 함수 요청에는 인증이 필요합니다. 배포 중 인증되지 않은 호출을 허용하도록 선택할 수 있습니다. 자세한 내용은 인증되지 않은 HTTP 함수 호출 허용을 참조하세요.
HTTP 함수를 사용하여 일반 HTTP(S) 요청을 처리할 수 있는 Cloud Functions를 구현합니다.
배포
함수를 배포할 때 HTTP 트리거를 지정할 수 있습니다. 함수 배포 방법에 대한 일반 안내는 Cloud 함수 배포를 참조하고 배포 중 HTTP 트리거 구성에 대한 추가 정보는 이 섹션을 참조하세요.
gcloud
gcloud CLI를 사용하여 배포하는 경우 여기 표시된 플래그가 HTTP 트리거 구성을 위해 사용됩니다.
gcloud functions deploy YOUR_FUNCTION_NAME \ --trigger-http \ [--allow-unauthenticated] \ [--security-level=SECURITY_LEVEL] \ ...
--trigger-http
플래그는 함수에 HTTP 트리거가 사용되도록 지정합니다.--allow-unauthenticated
플래그는 인증 없이 함수를 호출할 수 있도록 지정합니다. 이 플래그를 생략하면 함수 호출에 인증이 필요합니다(기본값). 자세한 내용은 호출 인증을 참조하세요.- (1세대)
--security-level
플래그는 함수 엔드포인트에 HTTPS가 필요한지 여부를 제어합니다.secure-always
값을 선택하면 HTTPS가 필요하고 SSL 이외의 HTTP 요청이 지원되지 않습니다.secure-optional
값을 선택하면 HTTP 및 HTTPS가 모두 지원됩니다. 기본값은secure-always
입니다.
콘솔
Google Cloud 콘솔을 사용하여 배포하는 경우 트리거 섹션에서 HTTP 트리거를 구성할 수 있습니다.
- Cloud Functions(2세대):
- HTTPS의 인증 필드에서 인증되지 않은 함수 호출을 허용할지 여부에 따라 옵션을 선택합니다. 기본적으로 인증이 필요합니다. 자세한 내용은 호출 인증을 참조하세요.
- Cloud Functions(1세대):
- 트리거 유형 필드에서 HTTP를 선택합니다.
- 인증 필드에서 인증되지 않은 함수 호출을 허용할지 여부에 따라 옵션을 선택합니다. 기본적으로 인증이 필요합니다. 자세한 내용은 호출 인증을 참조하세요.
- HTTPS 필요 체크박스를 선택하거나 선택 해제하여 함수 엔드포인트에 HTTPS가 필요한지 여부를 제어합니다. 선택 해제하면 HTTP 및 HTTPS가 모두 지원됩니다.
함수 URL
함수가 HTTP 트리거에 배포된 경우 할당된 URL을 검색할 수 있습니다.
1세대 및 2세대 함수에는 다음과 같은 형식의 URL이 할당되었습니다. 이러한 URL에는 결정된 형식이 사용됩니다. 즉, 함수를 배포하기 전에 URL을 예측할 수 있습니다.
https://REGION-PROJECT_ID.cloudfunctions.net/FUNCTION_NAME
2세대 함수에는 기본 Cloud Run 서비스와 연결된 URL도 할당됩니다. 이러한 URL에는 결정된 형식이 없습니다. 즉, 두 번째 필드가 무작위 해시이기 때문에 함수를 배포하기 전에는 URL이 무엇인지 예측할 수 없습니다. 하지만 함수를 배포한 후에는 URL이 안정적으로 유지됩니다.
https://FUNCTION_NAME-RANDOM_HASH-REGION.a.run.app
2세대 함수의 cloudfunctions.net
URL 및 run.app
URL은 동일한 방식으로 작동합니다. 서로 바꿔서 사용할 수 있습니다.
다음과 같이 함수 URL을 검색할 수 있습니다.
gcloud
Cloud Functions(2세대):
gcloud functions describe YOUR_FUNCTION_NAME \ --gen2 \ --region=YOUR_FUNCTION_REGION \ --format="value(serviceConfig.uri)"
Cloud Functions(1세대):
gcloud functions describe YOUR_FUNCTION_NAME \ --format="value(httpsTrigger.url)"
콘솔
Google Cloud 콘솔에서 Cloud Functions 개요 페이지로 이동합니다.
URL을 검색할 함수의 이름을 클릭합니다.
수정 탭을 클릭합니다.
트리거 섹션에서 함수의 URL을 확인합니다.
다음 단계
- HTTP 함수 작성 방법 알아보기
- Cloud 함수 배포 방법 알아보기
- HTTP 함수 작성, 배포, 호출 예시는 HTTP 함수 튜토리얼을 참조하세요.