From fc7f2509ca92d8ee50d5f772e93b0b03f70162bd Mon Sep 17 00:00:00 2001 From: dudaodong Date: Mon, 23 Jun 2025 11:31:54 +0800 Subject: [PATCH] fix: fix issue #314 --- netutil/net.go | 2 +- netutil/net_test.go | 8 ++++++++ 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/netutil/net.go b/netutil/net.go index 23af993..1b3b2fe 100644 --- a/netutil/net.go +++ b/netutil/net.go @@ -365,7 +365,7 @@ func validateScheme(scheme string) error { return nil } -var hostRegex = regexp.MustCompile(`^([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9\-]*[a-zA-Z0-9])(\.[a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9\-]*[a-zA-Z0-9])*$`) +var hostRegex = regexp.MustCompile(`^([a-zA-Z0-9][a-zA-Z0-9\-]*[a-zA-Z0-9]?)(\.[a-zA-Z0-9][a-zA-Z0-9\-]*[a-zA-Z0-9]?)+$`) var pathRegex = regexp.MustCompile(`^\/([a-zA-Z0-9%_-]+(?:\/[a-zA-Z0-9%_-]+)*)$`) var alphaNumericRegex = regexp.MustCompile(`^[a-zA-Z0-9]+$`) diff --git a/netutil/net_test.go b/netutil/net_test.go index 9b89e85..a080a48 100644 --- a/netutil/net_test.go +++ b/netutil/net_test.go @@ -196,6 +196,14 @@ func TestBuildUrl(t *testing.T) { want: "https://www.test.com/path%20with%20spaces", wantErr: false, }, + { + scheme: "https", + host: "my.api.edu.cn", + path: "/api", + query: nil, + want: "https://my.api.edu.cn/api", + wantErr: false, + }, } for _, tt := range tests {