headerbuilder.go 496 B

1234567891011121314151617181920212223242526272829
  1. package gateway
  2. import (
  3. "fmt"
  4. "net/http"
  5. "strings"
  6. )
  7. const (
  8. metadataHeaderPrefix = "Grpc-Metadata-"
  9. metadataPrefix = "gateway-"
  10. )
  11. func buildHeaders(header http.Header) []string {
  12. var headers []string
  13. for k, v := range header {
  14. if !strings.HasPrefix(k, metadataHeaderPrefix) {
  15. continue
  16. }
  17. key := fmt.Sprintf("%s%s", metadataPrefix, strings.TrimPrefix(k, metadataHeaderPrefix))
  18. for _, vv := range v {
  19. headers = append(headers, key+":"+vv)
  20. }
  21. }
  22. return headers
  23. }