Fix upstream proxy appending `?` to requests
This commit is contained in:
		
							parent
							
								
									f0963b3444
								
							
						
					
					
						commit
						025ef3eca4
					
				|  | @ -16,6 +16,7 @@ | |||
| 
 | ||||
| ## Changes since v7.0.1 | ||||
| 
 | ||||
| - [#1115](https://github.com/oauth2-proxy/oauth2-proxy/pull/1115) Fix upstream proxy appending ? to requests (@JoelSpeed) | ||||
| - [#1117](https://github.com/oauth2-proxy/oauth2-proxy/pull/1117)  Deprecate GCP HealthCheck option (@JoelSpeed) | ||||
| - [#1104](https://github.com/oauth2-proxy/oauth2-proxy/pull/1104) Allow custom robots text pages (@JoelSpeed) | ||||
| - [#1045](https://github.com/oauth2-proxy/oauth2-proxy/pull/1045) Ensure redirect URI always has a scheme (@JoelSpeed) | ||||
|  |  | |||
|  | @ -153,6 +153,7 @@ func setProxyDirector(proxy *httputil.ReverseProxy) { | |||
| 		// use RequestURI so that we aren't unescaping encoded slashes in the request path
 | ||||
| 		req.URL.Opaque = req.RequestURI | ||||
| 		req.URL.RawQuery = "" | ||||
| 		req.URL.ForceQuery = false | ||||
| 	} | ||||
| } | ||||
| 
 | ||||
|  |  | |||
|  | @ -140,6 +140,29 @@ var _ = Describe("HTTP Upstream Suite", func() { | |||
| 			}, | ||||
| 			expectedUpstream: "encodedSlashes", | ||||
| 		}), | ||||
| 		Entry("request a path with an empty query string", &httpUpstreamTableInput{ | ||||
| 			id:           "default", | ||||
| 			serverAddr:   &serverAddr, | ||||
| 			target:       "http://example.localhost/foo?", | ||||
| 			method:       "GET", | ||||
| 			body:         []byte{}, | ||||
| 			errorHandler: nil, | ||||
| 			expectedResponse: testHTTPResponse{ | ||||
| 				code: 200, | ||||
| 				header: map[string][]string{ | ||||
| 					contentType: {applicationJSON}, | ||||
| 				}, | ||||
| 				request: testHTTPRequest{ | ||||
| 					Method:     "GET", | ||||
| 					URL:        "http://example.localhost/foo?", | ||||
| 					Header:     map[string][]string{}, | ||||
| 					Body:       []byte{}, | ||||
| 					Host:       "example.localhost", | ||||
| 					RequestURI: "http://example.localhost/foo?", | ||||
| 				}, | ||||
| 			}, | ||||
| 			expectedUpstream: "default", | ||||
| 		}), | ||||
| 		Entry("when the request has a body", &httpUpstreamTableInput{ | ||||
| 			id:           "requestWithBody", | ||||
| 			serverAddr:   &serverAddr, | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue