REST Resource: projects.locations.httpRoutes

리소스: HttpRoute

HttpRoute는 메시 또는 게이트웨이 리소스에 의해 HTTP 트래픽을 라우팅하는 방법을 정의하는 리소스입니다.

JSON 표현
{
  "name": string,
  "selfLink": string,
  "description": string,
  "createTime": string,
  "updateTime": string,
  "hostnames": [
    string
  ],
  "meshes": [
    string
  ],
  "gateways": [
    string
  ],
  "labels": {
    string: string,
    ...
  },
  "rules": [
    {
      object (RouteRule)
    }
  ]
}
필드
name

string

필수 항목. HttpRoute 리소스 이름입니다. projects/*/locations/global/httpRoutes/http_route_name> 패턴과 일치합니다.

description

string

선택사항. 리소스에 대한 자유 텍스트 설명입니다. 최대 길이는 1,024자(영문 기준)입니다.

createTime

string (Timestamp format)

출력 전용입니다. 리소스가 생성된 타임스탬프입니다.

RFC3339 UTC 'Zulu' 형식의 타임스탬프입니다(나노초 단위, 소수점 이하 9자리). 예를 들면 "2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z"입니다.

updateTime

string (Timestamp format)

출력 전용입니다. 리소스가 업데이트된 타임스탬프입니다.

RFC3339 UTC 'Zulu' 형식의 타임스탬프입니다(나노초 단위, 소수점 이하 9자리). 예를 들면 "2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z"입니다.

hostnames[]

string

필수 항목. 호스트 이름은 요청을 처리할 HttpRoute를 선택하기 위해 HTTP 호스트 헤더와 일치해야 하는 호스트 집합을 정의합니다. 호스트 이름은 RFC 1123에 정의된 대로 네트워크 호스트의 정규화된 도메인 이름입니다. 단, IP는 허용되지 않습니다. - 호스트 이름 앞에 와일드 카드 라벨(*.)이 추가될 수 있습니다. 와일드 카드 라벨은 첫 번째 라벨로 단독으로 표시되어야 합니다.

호스트 이름은 '정확'(네트워크 호스트의 끝점이 없는 도메인 이름(예: foo.example.com))하거나 '와일드 카드'(단일 와일드 카드 라벨로 프리픽스가 지정된 도메인 이름(예: *.example.com))일 수 있습니다.

RFC1035 및 RFC1123에 따라 라벨은 소문자 영숫자 문자 또는 '-'로 구성되어야 하며 영숫자 문자로 시작하고 끝나야 합니다. 다른 구두점은 허용되지 않습니다.

메시 또는 게이트웨이와 연결된 경로에는 고유한 호스트 이름이 있어야 합니다. 호스트 이름이 충돌하는 여러 경로를 연결하려고 하면 구성이 거부됩니다.

예를 들어 호스트 이름 *.foo.bar.com*.bar.com의 경로를 동일한 메시(또는 동일한 범위의 게이트웨이)에 연결하는 것은 허용되지만 두 경로를 모두 *.bar.com에 연결하거나 모두 bar.com에 연결할 수는 없습니다.

meshes[]

string

선택사항. 메시는 이 HttpRoute가 연결된 메시 목록을 메시에서 제공하는 요청을 라우팅하는 라우팅 규칙 중 하나로 정의합니다.

각 메시 참조는 projects/*/locations/global/meshes/<mesh_name> 패턴과 일치해야 합니다.

연결된 메시는 SIDECAR 유형이어야 합니다.

gateways[]

string

선택사항. 게이트웨이는 이 HttpRoute가 연결된 게이트웨이 목록을 게이트웨이에서 제공하는 요청을 라우팅하는 라우팅 규칙 중 하나로 정의합니다.

각 게이트웨이 참조는 projects/*/locations/global/gateways/<gateway_name> 패턴과 일치해야 합니다.

labels

map (key: string, value: string)

선택사항. HttpRoute 리소스와 연결된 라벨 태그 집합입니다.

"key": value 쌍 목록을 포함하는 객체입니다. 예: { "name": "wrench", "mass": "1.3kg", "count": "3" }

rules[]

object (RouteRule)

필수 항목. 트래픽이 라우팅되고 처리되는 방식을 정의하는 규칙입니다. 규칙은 규칙에 지정된 RouteMatch를 기반으로 순차적으로 일치합니다.

RouteRule

트래픽을 비교하고 트래픽이 일치할 때 트래픽을 라우팅하는 방법을 지정합니다.

JSON 표현
{
  "matches": [
    {
      object (RouteMatch)
    }
  ],
  "action": {
    object (RouteAction)
  }
}
필드
matches[]

object (RouteMatch)

일치 항목 목록은 들어오는 HTTP 요청과 규칙을 일치시키는 데 사용되는 조건을 정의합니다. 각 일치는 독립적입니다. 즉, 일치 중 하나라도 충족되면 이 규칙이 일치합니다.

일치 필드가 지정되지 않으면 이 규칙은 무조건 트래픽과 일치합니다.

기본 규칙을 구성하려면 일치 항목이 지정되지 않은 규칙을 규칙 목록 끝에 추가합니다.

action

object (RouteAction)

일치하는 트래픽을 라우팅하는 방법을 정의하는 세부 규칙입니다.

RouteMatch

RouteMatch는 요청을 일치시키는 데 사용되는 사양을 정의합니다. 일치 유형이 여러 개 설정된 경우 모든 유형의 일치가 일치하면 이 RouteMatch가 일치합니다.

JSON 표현
{
  "ignoreCase": boolean,
  "headers": [
    {
      object (HeaderMatch)
    }
  ],
  "queryParameters": [
    {
      object (QueryParameterMatch)
    }
  ],

  // Union field PathMatch can be only one of the following:
  "fullPathMatch": string,
  "prefixMatch": string,
  "regexMatch": string
  // End of list of possible types for union field PathMatch.
}
필드
ignoreCase

boolean

prefixMatch 및 fullPathMatch 일치에서 대소문자를 구분할지 지정합니다. 기본값은 false입니다.

headers[]

object (HeaderMatch)

일치시킬 HTTP 요청 헤더 목록을 지정합니다. 제공된 모든 헤더가 일치해야 합니다.

queryParameters[]

object (QueryParameterMatch)

일치시킬 쿼리 파라미터 목록을 지정합니다. 모든 쿼리 파라미터가 일치해야 합니다.

통합 필드 PathMatch.

PathMatch는 다음 중 하나여야 합니다.

fullPathMatch

string

HTTP 요청 경로 값은 이 값과 정확하게 일치해야 합니다.

fullPathMatch, prefixMatch, regexMatch 중 하나만 사용해야 합니다.

prefixMatch

string

HTTP 요청 경로 값은 지정된 prefixMatch로 시작해야 합니다. prefixMatch는 /로 시작해야 합니다.

fullPathMatch, prefixMatch, regexMatch 중 하나만 사용해야 합니다.

regexMatch

string

HTTP 요청 경로 값은 원래 URL에 제공된 쿼리 파라미터와 앵커를 삭제한 후 regexMatch로 지정된 정규 표현식을 충족해야 합니다. 정규 표현식 문법은 https://github.com/google/re2/wiki/Syntax를 참조하세요.

fullPathMatch, prefixMatch, regexMatch 중 하나만 사용해야 합니다.

HeaderMatch

HTTP 요청 헤더를 기반으로 라우팅 규칙을 선택하는 방법을 지정합니다.

JSON 표현
{
  "header": string,
  "invertMatch": boolean,

  // Union field MatchType can be only one of the following:
  "exactMatch": string,
  "regexMatch": string,
  "prefixMatch": string,
  "presentMatch": boolean,
  "suffixMatch": string,
  "rangeMatch": {
    object (IntegerRange)
  }
  // End of list of possible types for union field MatchType.
}
필드
header

string

일치시킬 HTTP 헤더의 이름입니다.

invertMatch

boolean

지정하면 일치 결과가 확인되기 전에 반전됩니다. 기본값은 false로 설정됩니다.

통합 필드 MatchType.

MatchType는 다음 중 하나여야 합니다.

exactMatch

string

헤더의 값은 exactMatch의 콘텐츠와 정확하게 일치해야 합니다.

regexMatch

string

헤더의 값이 regexMatch에 지정된 정규 표현식과 일치해야 합니다. 정규 표현식 문법은 https://github.com/google/re2/wiki/Syntax를 참조하세요.

prefixMatch

string

헤더의 값은 prefixMatch의 콘텐츠로 시작해야 합니다.

presentMatch

boolean

headerName이 있는 헤더가 있어야 합니다. 일치는 헤더에 값이 있는지 여부와 관계없이 발생합니다.

suffixMatch

string

헤더의 값은 suffixMatch의 콘텐츠로 끝나야 합니다.

rangeMatch

object (IntegerRange)

지정된 경우 요청 헤더 값이 범위 내에 있으면 규칙이 일치합니다.

IntegerRange

정수 값 범위를 나타냅니다.

JSON 표현
{
  "start": integer,
  "end": integer
}
필드
start

integer

범위의 시작(해당 값 포함)

end

integer

범위의 끝(해당 값 제외)

QueryParameterMatch

요청의 쿼리 파라미터와 일치하는 사양입니다.

JSON 표현
{
  "queryParameter": string,

  // Union field MatchType can be only one of the following:
  "exactMatch": string,
  "regexMatch": string,
  "presentMatch": boolean
  // End of list of possible types for union field MatchType.
}
필드
queryParameter

string

일치시킬 쿼리 파라미터의 이름입니다.

통합 필드 MatchType.

MatchType는 다음 중 하나여야 합니다.

exactMatch

string

쿼리 파라미터의 값은 exactMatch의 콘텐츠와 정확하게 일치해야 합니다.

exactMatch, regexMatch, presentMatch 중 하나만 설정해야 합니다.

regexMatch

string

쿼리 파라미터의 값은 regexMatch로 지정된 정규 표현식과 일치해야 합니다. 정규 표현식 문법은 https://github.com/google/re2/wiki/Syntax를 참조하세요.

exactMatch, regexMatch, presentMatch 중 하나만 설정해야 합니다.

presentMatch

boolean

파라미터에 값이 있는지와 관계없이 요청에 쿼리 파라미터가 포함된 경우 QueryParameterMatcher가 일치하도록 지정합니다.

exactMatch, regexMatch, presentMatch 중 하나만 설정해야 합니다.

RouteAction

트래픽 라우팅 및 연결된 정책 적용을 위한 사양입니다.

JSON 표현
{
  "destinations": [
    {
      object (Destination)
    }
  ],
  "redirect": {
    object (Redirect)
  },
  "faultInjectionPolicy": {
    object (FaultInjectionPolicy)
  },
  "requestHeaderModifier": {
    object (HeaderModifier)
  },
  "responseHeaderModifier": {
    object (HeaderModifier)
  },
  "urlRewrite": {
    object (URLRewrite)
  },
  "timeout": string,
  "retryPolicy": {
    object (RetryPolicy)
  },
  "requestMirrorPolicy": {
    object (RequestMirrorPolicy)
  },
  "corsPolicy": {
    object (CorsPolicy)
  },
  "statefulSessionAffinity": {
    object (StatefulSessionAffinityPolicy)
  },
  "directResponse": {
    object (HttpDirectResponse)
  },
  "idleTimeout": string
}
필드
destinations[]

object (Destination)

트래픽을 전달해야 하는 대상입니다.

redirect

object (Redirect)

이 필드를 설정하면 요청이 이 필드에 구성된 대로 전달됩니다.

faultInjectionPolicy

object (FaultInjectionPolicy)

백엔드 서비스 장애에 대한 클라이언트의 복원력을 테스트하기 위해 트래픽에 도입된 결함 주입 사양입니다. 결함 주입의 일환으로 클라이언트가 백엔드 서비스에 요청을 전송할 때 백엔드 서비스로 요청을 전송하기 전에 요청의 일부에 지연이 발생할 수 있습니다. 마찬가지로 클라이언트의 요청 중 일정 비율이 중단될 수 있습니다.

faultInjectionPolicy로 구성된 클라이언트는 timeout 및 retryPolicy를 무시합니다.

requestHeaderModifier

object (HeaderModifier)

요청을 대상에 전송하기 전에 일치하는 요청의 헤더를 수정하기 위한 사양입니다. Destination과 RouteAction 모두에 HeaderModifiers가 설정된 경우 병합됩니다. 두 항목 간의 충돌은 구성에서 해결되지 않습니다.

responseHeaderModifier

object (HeaderModifier)

응답을 클라이언트로 다시 보내기 전에 응답의 헤더를 수정하기 위한 사양입니다. Destination과 RouteAction 모두에 HeaderModifiers가 설정된 경우 병합됩니다. 두 항목 간의 충돌은 구성에서 해결되지 않습니다.

urlRewrite

object (URLRewrite)

요청을 대상에 전달하기 전에 URL을 재작성하기 위한 사양입니다.

timeout

string (Duration format)

선택한 경로의 제한 시간을 지정합니다. 제한 시간은 요청이 완전히 처리된 시간(즉, 스트림 종료)부터 응답이 완전히 처리될 때까지 계산됩니다. 제한 시간에는 모든 재시도 횟수가 포함됩니다.

소수점 아래가 최대 9자리까지이고 's'로 끝나는 초 단위 기간입니다. 예를 들면 "3.5s"입니다.

retryPolicy

object (RetryPolicy)

이 경로와 연결된 재시도 정책을 지정합니다.

requestMirrorPolicy

object (RequestMirrorPolicy)

경로 대상에 대한 요청이 별도의 미러링된 대상에 섀도잉되는 방식에 관한 정책을 지정합니다. 프록시는 응답을 반환하기 전에 섀도 대상이 응답할 때까지 기다리지 않습니다. 섀도 서비스로 트래픽을 전송하기 전에 호스트/권한 헤더에 -shadow 서픽스가 추가됩니다.

corsPolicy

object (CorsPolicy)

클라이언트 측 교차 출처 요청을 허용하는 사양입니다.

statefulSessionAffinity

object (StatefulSessionAffinityPolicy)

선택사항. 쿠키 기반 스테이트풀(Stateful) 세션 어피니티를 지정합니다.

directResponse

object (HttpDirectResponse)

선택사항. 요청과 관계없이 반환되는 정적 HTTP 응답 객체입니다.

idleTimeout

string (Duration format)

선택사항. 선택한 경로의 유휴 제한 시간을 지정합니다. 유휴 시간 제한은 업스트림 또는 다운스트림 연결에서 전송되거나 수신되는 바이트가 없는 기간으로 정의됩니다. 설정하지 않으면 기본 유휴 시간 제한은 1시간입니다. 0으로 설정하면 제한 시간이 사용 중지됩니다.

소수점 아래가 최대 9자리까지이고 's'로 끝나는 초 단위 기간입니다. 예를 들면 "3.5s"입니다.

Destination

요청을 라우팅해야 하는 대상의 사양입니다.

JSON 표현
{
  "serviceName": string,
  "weight": integer,
  "requestHeaderModifier": {
    object (HeaderModifier)
  },
  "responseHeaderModifier": {
    object (HeaderModifier)
  }
}
필드
serviceName

string

트래픽을 라우팅할 BackendService의 URL입니다.

weight

integer

serviceName 필드에서 참조하는 백엔드로 전달되는 요청의 비율을 지정합니다. 이 값은 - 가중치/합계(이 대상 목록의 가중치)로 계산됩니다. 0이 아닌 값의 경우 구현에서 지원하는 정밀도에 따라 여기에 정의된 정확한 비율에서 약간의 엡실론이 있을 수 있습니다.

serviceName이 하나만 지정되고 가중치가 0보다 큰 경우 트래픽의 100%가 해당 백엔드로 전달됩니다.

하나의 서비스 이름에 가중치를 지정하는 경우 모든 서비스 이름에 가중치를 지정해야 합니다.

모든 서비스에 가중치가 지정되지 않은 경우 트래픽이 모든 서비스에 동일한 비율로 분산됩니다.

requestHeaderModifier

object (HeaderModifier)

선택사항. 요청을 대상에 전송하기 전에 일치하는 요청의 헤더를 수정하기 위한 사양입니다. Destination과 RouteAction 모두에 HeaderModifiers가 설정된 경우 병합됩니다. 두 항목 간의 충돌은 구성에서 해결되지 않습니다.

responseHeaderModifier

object (HeaderModifier)

선택사항. 응답을 클라이언트로 다시 보내기 전에 응답의 헤더를 수정하기 위한 사양입니다. Destination과 RouteAction 모두에 HeaderModifiers가 설정된 경우 병합됩니다. 두 항목 간의 충돌은 구성에서 해결되지 않습니다.

HeaderModifier

HTTP 요청 및 HTTP 응답에서 HTTP 헤더를 수정하기 위한 사양입니다.

JSON 표현
{
  "set": {
    string: string,
    ...
  },
  "add": {
    string: string,
    ...
  },
  "remove": [
    string
  ]
}
필드
set

map (key: string, value: string)

키가 헤더 이름이고 값이 헤더 값인 지정된 맵으로 헤더를 완전히 덮어쓰거나 대체합니다.

"key": value 쌍 목록을 포함하는 객체입니다. 예: { "name": "wrench", "mass": "1.3kg", "count": "3" }

add

map (key: string, value: string)

키가 헤더 이름이고 값이 헤더 값인 지정된 맵으로 헤더를 추가합니다.

"key": value 쌍 목록을 포함하는 객체입니다. 예: { "name": "wrench", "mass": "1.3kg", "count": "3" }

remove[]

string

목록에 지정된 헤더(헤더 이름으로 일치)를 삭제합니다.

리디렉션

트래픽 리디렉션 사양입니다.

JSON 표현
{
  "hostRedirect": string,
  "pathRedirect": string,
  "prefixRewrite": string,
  "responseCode": enum (ResponseCode),
  "httpsRedirect": boolean,
  "stripQuery": boolean,
  "portRedirect": integer
}
필드
hostRedirect

string

요청에 제공된 호스트 대신 리디렉션 응답에 사용될 호스트입니다.

pathRedirect

string

요청에 제공된 경로 대신 리디렉션 응답에 사용될 경로입니다. pathRedirect는 prefixRedirect와 함께 제공할 수 없습니다. 둘 중 하나만 제공하거나 둘 다 제공하지 마세요. 둘 다 제공되지 않으면 원래 요청의 경로가 리디렉션에 사용됩니다.

prefixRewrite

string

리디렉션 중에 일치하는 프리픽스(또는 경로)를 이 값으로 전환해야 함을 나타냅니다. 이 옵션을 사용하면 요청에 따라 URL을 동적으로 만들 수 있습니다.

responseCode

enum (ResponseCode)

리디렉션에 사용할 HTTP 상태 코드입니다.

httpsRedirect

boolean

true로 설정하면 리디렉션된 요청의 URL 스키마가 https로 설정됩니다. false로 설정하면 리디렉션된 요청의 URL 스키마가 요청의 URL 스키마와 동일하게 유지됩니다.

기본값은 false로 설정됩니다.

stripQuery

boolean

true로 설정하면 요청을 리디렉션하기 전에 원래 URL의 함께 제공되는 쿼리 부분이 삭제됩니다. false로 설정하면 원래 URL의 쿼리 부분이 유지됩니다.

기본값은 false로 설정됩니다.

portRedirect

integer

요청에 제공된 포트 대신 리디렉션된 요청에 사용될 포트입니다.

ResponseCode

지원되는 HTTP 응답 코드입니다.

열거형
RESPONSE_CODE_UNSPECIFIED 기본값
MOVED_PERMANENTLY_DEFAULT 301에 해당합니다.
FOUND 302에 해당합니다.
SEE_OTHER 303에 해당합니다.
TEMPORARY_REDIRECT 307에 해당합니다. 이 경우 요청 메서드는 유지됩니다.
PERMANENT_REDIRECT 308에 해당합니다. 이 경우 요청 메서드는 유지됩니다.

FaultInjectionPolicy

대상 서비스 장애에 대한 클라이언트의 복원력을 테스트하기 위해 트래픽에 도입된 결함 주입 사양입니다. 결함 주입의 일환으로 클라이언트가 대상에 요청을 전송할 때 클라이언트 프록시가 대상 서비스로 요청을 전송하기 전에 요청의 일부에 지연이 발생할 수 있습니다. 마찬가지로 클라이언트 프록시에서 요청의 일정 비율을 중단할 수 있습니다.

JSON 표현
{
  "delay": {
    object (Delay)
  },
  "abort": {
    object (Abort)
  }
}
필드
delay

object (Delay)

클라이언트 요청에 지연을 삽입하기 위한 사양입니다.

abort

object (Abort)

클라이언트 요청을 중단하기 위한 사양입니다.

지연

대상에 전송되기 전에 결함 주입의 일환으로 클라이언트 요청이 지연되는 방식을 지정합니다.

JSON 표현
{
  "fixedDelay": string,
  "percentage": integer
}
필드
fixedDelay

string (Duration format)

요청을 전달하기 전에 고정 지연 시간을 지정합니다.

소수점 아래가 최대 9자리까지이고 's'로 끝나는 초 단위 기간입니다. 예를 들면 "3.5s"입니다.

percentage

integer

지연이 주입될 트래픽의 비율입니다.

값은 0~100 사이여야 합니다.

취소

대상에 전송되기 전에 결함 주입의 일환으로 클라이언트 요청이 중단되는 방식을 지정합니다.

JSON 표현
{
  "httpStatus": integer,
  "percentage": integer
}
필드
httpStatus

integer

요청을 중단하는 데 사용되는 HTTP 상태 코드입니다.

값은 200~599(포함) 사이여야 합니다.

percentage

integer

중단될 트래픽의 비율입니다.

값은 0~100 사이여야 합니다.

URLRewrite

요청을 대상에 전달하기 전에 요청의 URL을 수정하기 위한 사양입니다.

JSON 표현
{
  "pathPrefixRewrite": string,
  "hostRewrite": string
}
필드
pathPrefixRewrite

string

선택한 대상에 요청을 전달하기 전에 요청 경로에서 일치하는 부분이 이 값으로 대체됩니다.

hostRewrite

string

선택한 대상에 요청을 전달하기 전에 요청 호스트 헤더가 이 값으로 대체됩니다.

RetryPolicy

재시도 사양입니다.

JSON 표현
{
  "retryConditions": [
    string
  ],
  "numRetries": integer,
  "perTryTimeout": string
}
필드
retryConditions[]

string

이 재시도 정책이 적용되는 조건을 하나 이상 지정합니다. 유효한 값은 다음과 같습니다. 5xx: 대상 서비스가 5xx 응답 코드로 응답하거나 대상 서비스가 전혀 응답하지 않는 경우(예: 연결 해제, 재설정, 읽기 시간 초과, 연결 실패, 거부된 스트림) 프록시가 재시도합니다.

gateway-error: 5xx와 유사하지만 502, 503 또는 504 응답 코드에만 적용됩니다.

reset: 대상 서비스가 전혀 응답하지 않으면 프록시에서 재시도를 시도합니다(연결 해제/재설정/읽기 시간 초과).

connect-failure: 대상에 연결하지 못할 경우(예: 연결 시간 초과) 프록시가 다시 시도합니다.

retriable-4xx: 재시도 가능한 4xx 응답 코드의 경우 프록시가 재시도합니다. 현재 재시도 가능한 유일한 오류는 409입니다.

refused-stream: 대상에서 REFUSED_STREAM 오류 코드로 스트림을 재설정하면 프록시가 다시 시도합니다. 이 재설정 유형은 재시도해도 안전함을 나타냅니다.

numRetries

integer

허용되는 재시도 횟수를 지정합니다. 이 숫자는 0보다 커야 합니다. 지정하지 않으면 기본값은 1입니다.

perTryTimeout

string (Duration format)

재시도 시도당 0이 아닌 제한 시간을 지정합니다.

소수점 아래가 최대 9자리까지이고 's'로 끝나는 초 단위 기간입니다. 예를 들면 "3.5s"입니다.

RequestMirrorPolicy

요청이 별도의 미러링된 대상 서비스로 섀도잉되는 방식에 관한 정책을 지정합니다. 프록시는 섀도 서비스의 응답을 기다리지 않습니다. 섀도 서비스로 트래픽을 전송하기 전에 호스트/권한 헤더에 -shadow 서픽스가 추가됩니다.

JSON 표현
{
  "destination": {
    object (Destination)
  },
  "mirrorPercent": number
}
필드
destination

object (Destination)

요청이 미러링될 대상입니다. 대상의 가중치는 무시됩니다.

mirrorPercent

number

선택사항. 원하는 대상에 미러링되는 요청의 비율입니다.

CorsPolicy

클라이언트 측 교차 출처 요청을 허용하는 사양입니다.

JSON 표현
{
  "allowOrigins": [
    string
  ],
  "allowOriginRegexes": [
    string
  ],
  "allowMethods": [
    string
  ],
  "allowHeaders": [
    string
  ],
  "exposeHeaders": [
    string
  ],
  "maxAge": string,
  "allowCredentials": boolean,
  "disabled": boolean
}
필드
allowOrigins[]

string

CORS 요청을 수행할 수 있는 출처 목록을 지정합니다. 출처가 allowOrigins의 항목 또는 allowOriginRegexes의 항목과 일치하면 허용됩니다.

allowOriginRegexes[]

string

허용된 출처와 일치하는 정규 표현식 패턴을 지정합니다. 정규 표현식 문법은 https://github.com/google/re2/wiki/Syntax를 참조하세요.

allowMethods[]

string

Access-Control-Allow-Methods 헤더의 콘텐츠를 지정합니다.

allowHeaders[]

string

Access-Control-Allow-Headers 헤더의 콘텐츠를 지정합니다.

exposeHeaders[]

string

Access-Control-Expose-Headers 헤더의 콘텐츠를 지정합니다.

maxAge

string

프리플라이트 요청의 결과를 캐시할 수 있는 기간(초)을 지정합니다. 이는 Access-Control-Max-Age 헤더로 변환됩니다.

allowCredentials

boolean

프리플라이트 요청에 대한 응답으로 이 값을 true로 설정하면 실제 요청에 사용자 인증 정보를 포함할 수 있음을 나타냅니다. 이는 Access-Control-Allow-Credentials 헤더로 변환됩니다.

기본값은 false입니다.

disabled

boolean

true인 경우 CORS 정책이 사용 중지됩니다. 기본값은 false이며, 이는 CORS 정책이 적용되고 있음을 나타냅니다.

StatefulSessionAffinityPolicy

데이터 영역에서 특정 대상 호스트를 인코딩하는 'GSSA'라는 이름의 '세션 쿠키'를 제공하고 대상 호스트가 정상적으로 작동하는 한 이 쿠키가 포함된 각 요청이 해당 호스트로 전달되는 쿠키 기반 스테이트풀(Stateful) 세션 어피니티의 사양입니다.

gRPC 프록시리스 메시 라이브러리 또는 사이드카 프록시가 세션 쿠키를 관리하지만 클라이언트 애플리케이션 코드는 세션의 각 RPC에서 다음 RPC로 쿠키를 복사하는 역할을 담당합니다.

JSON 표현
{
  "cookieTtl": string
}
필드
cookieTtl

string (Duration format)

필수 항목. 데이터 영역에서 생성된 Set-Cookie 헤더의 쿠키 TTL 값입니다. 쿠키의 수명은 1~86,400초(24시간 포함) 사이의 값으로 설정할 수 있습니다.

소수점 아래가 최대 9자리까지이고 's'로 끝나는 초 단위 기간입니다. 예를 들면 "3.5s"입니다.

HttpDirectResponse

반환할 정적 HTTP 응답 객체입니다.

JSON 표현
{
  "status": integer,

  // Union field HttpBody can be only one of the following:
  "stringBody": string,
  "bytesBody": string
  // End of list of possible types for union field HttpBody.
}
필드
status

integer

필수 항목. HTTP 응답의 일부로 반환할 상태입니다. 양의 정수를 입력해야 합니다.

통합 필드 HttpBody. HTTP 응답의 일부로 반환할 본문입니다. HttpBody은 다음 중 하나여야 합니다.
stringBody

string

선택사항. 응답 본문(문자열)입니다. 최대 본문 길이는 1,024자(영문 기준)입니다.

bytesBody

string (bytes format)

선택사항. 응답 본문(바이트)입니다. 최대 본문 크기는 4,096바이트입니다.

base64 인코딩 문자열입니다.

메서드

create

특정 프로젝트와 위치에 새 HttpRoute를 만듭니다.

delete

단일 HttpRoute를 삭제합니다.

get

단일 HttpRoute의 세부정보를 가져옵니다.

list

특정 프로젝트와 위치의 HttpRoute를 나열합니다.

patch

단일 HttpRoute 매개변수를 업데이트합니다.