feat: Support matching pseudo headers (#803)

This commit is contained in:
Kent Dong
2024-01-26 16:44:12 +08:00
committed by GitHub
parent acd80d2528
commit c41264816e
9 changed files with 321 additions and 26 deletions

View File

@@ -699,8 +699,10 @@ func createRuleKey(annots map[string]string, hostAndPath string) string {
if idx := strings.Index(k, annotations.MatchHeader); idx != -1 {
key := k[start:idx] + k[idx+len(annotations.MatchHeader)+1:]
headers = append(headers, [2]string{key, val})
}
if idx := strings.Index(k, annotations.MatchQuery); idx != -1 {
} else if idx := strings.Index(k, annotations.MatchPseudoHeader); idx != -1 {
key := k[start:idx] + ":" + k[idx+len(annotations.MatchPseudoHeader)+1:]
headers = append(headers, [2]string{key, val})
} else if idx := strings.Index(k, annotations.MatchQuery); idx != -1 {
key := k[start:idx] + k[idx+len(annotations.MatchQuery)+1:]
params = append(params, [2]string{key, val})
}