emptygif
언어: 한국어

모든 언어 및 프레임워크

Envoy (direct_response) YAML

/pixel.gif 요청에 빈 GIF로 응답하는 Envoy (direct_response)용 YAML 스니펫입니다. GIF는 시작할 때 한 번만 디코딩합니다.

Envoy (direct_response) YAML

파일
envoy.yaml
실행
envoy -c envoy.yaml
static_resources:
  listeners:
    - name: http
      address:
        socket_address: { address: 0.0.0.0, port_value: 8080 }
      filter_chains:
        - filters:
            - name: envoy.filters.network.http_connection_manager
              typed_config:
                "@type": type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager
                stat_prefix: ingress
                http_filters:
                  - name: envoy.filters.http.router
                    typed_config:
                      "@type": type.googleapis.com/envoy.extensions.filters.http.router.v3.Router
                route_config:
                  virtual_hosts:
                    - name: default
                      domains: ["*"]
                      routes:
                        - match: { path: "/pixel.gif" }
                          direct_response:
                            status: 200
                            # bytes fields are base64 in YAML/JSON
                            body: { inline_bytes: "R0lGODlhAQABAIAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==" }
                          response_headers_to_add:
                            - header: { key: content-type, value: image/gif }
                              append_action: OVERWRITE_IF_EXISTS_OR_ADD
                            - header: { key: cache-control, value: no-store }
                              append_action: OVERWRITE_IF_EXISTS_OR_ADD

이 스니펫은 실행해 보고, 반환된 바이트를 비교했습니다.

확인

curl -sI http://localhost:8080/pixel.gif

공식 사이트: Envoy (direct_response)