correcting some behaviors for $DOCKER_HOST, now uses container's private IP instead of localhost

This commit is contained in:
yusing
2024-10-11 09:13:38 +08:00
parent d91b66ae87
commit 7184c9cfe9
68 changed files with 925 additions and 570 deletions

View File

@@ -74,7 +74,7 @@ type testArgs struct {
func newMiddlewareTest(middleware *Middleware, args *testArgs) (*TestResult, E.NestedError) {
var body io.Reader
var rr = new(requestRecorder)
var rr requestRecorder
var proxyURL *url.URL
var requestTarget string
var err error
@@ -87,11 +87,14 @@ func newMiddlewareTest(middleware *Middleware, args *testArgs) (*TestResult, E.N
body = bytes.NewReader(args.body)
}
if args.scheme == "" || args.scheme == "http" {
switch args.scheme {
case "":
fallthrough
case "http":
requestTarget = "http://" + testHost
} else if args.scheme == "https" {
case "https":
requestTarget = "https://" + testHost
} else {
default:
panic("typo?")
}
@@ -111,7 +114,7 @@ func newMiddlewareTest(middleware *Middleware, args *testArgs) (*TestResult, E.N
} else {
proxyURL, _ = url.Parse("https://" + testHost) // dummy url, no actual effect
}
rp := gphttp.NewReverseProxy(types.NewURL(proxyURL), rr)
rp := gphttp.NewReverseProxy(types.NewURL(proxyURL), &rr)
mid, setOptErr := middleware.WithOptionsClone(args.middlewareOpt)
if setOptErr != nil {
return nil, setOptErr