플러그인용 코드 샘플

이 페이지에서는 플러그인의 몇 가지 일반적인 사용 사례를 다루는 코드 샘플을 제공합니다.

더 많은 Rust, Go, C++ 플러그인 샘플은 플러그인용 Service Extensions GitHub 저장소를 참고하세요.

플러그인 기능은 Media CDN에서 미리보기로 제공됩니다.

HTTP 요청 및 응답 헤더 추가

다음 코드 샘플은 HTTP 요청 헤더를 추가하는 방법을 보여줍니다.

C++

#include "proxy_wasm_intrinsics.h"

class MyHttpContext : public Context {
 public:
  explicit MyHttpContext(uint32_t id, RootContext* root) : Context(id, root) {}

  FilterHeadersStatus onRequestHeaders(uint32_t headers,
                                       bool end_of_stream) override {
    // Always be a friendly proxy.
    addRequestHeader("Message", "hello");
    replaceRequestHeader("Welcome", "warm");
    return FilterHeadersStatus::Continue;
  }
};

static RegisterContextFactory register_StaticContext(
    CONTEXT_FACTORY(MyHttpContext), ROOT_FACTORY(RootContext));

Go

package main

import (
	"fmt"

	"github.com/proxy-wasm/proxy-wasm-go-sdk/proxywasm"