mirror of
https://github.com/zeromicro/go-zero.git
synced 2025-02-02 16:28:39 +08:00
13477238a3
* Revert "chore: remove unimplemented gateway (#2139)"
This reverts commit d70e73ec66
.
* feat: working gateway
* feat: use mr to make it faster
* feat: working gateway
* chore: add comments
* feat: support protoset besides reflection
* feat: support zrpc client conf
* docs: update readme
* feat: support grpc-metadata- header to gateway- header conversion
* chore: add docs
30 lines
496 B
Go
30 lines
496 B
Go
package gateway
|
|
|
|
import (
|
|
"fmt"
|
|
"net/http"
|
|
"strings"
|
|
)
|
|
|
|
const (
|
|
metadataHeaderPrefix = "Grpc-Metadata-"
|
|
metadataPrefix = "gateway-"
|
|
)
|
|
|
|
func buildHeaders(header http.Header) []string {
|
|
var headers []string
|
|
|
|
for k, v := range header {
|
|
if !strings.HasPrefix(k, metadataHeaderPrefix) {
|
|
continue
|
|
}
|
|
|
|
key := fmt.Sprintf("%s%s", metadataPrefix, strings.TrimPrefix(k, metadataHeaderPrefix))
|
|
for _, vv := range v {
|
|
headers = append(headers, key+":"+vv)
|
|
}
|
|
}
|
|
|
|
return headers
|
|
}
|