Skip to content

Commit

Permalink
use Transport() instead of Client.Do to avoid following 30x redirection
Browse files Browse the repository at this point in the history
  • Loading branch information
darren committed Feb 2, 2019
1 parent 930ebac commit 0567dae
Show file tree
Hide file tree
Showing 3 changed files with 8 additions and 5 deletions.
2 changes: 1 addition & 1 deletion go.mod
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
module github.com/darren/pacroxy

require github.com/darren/gpac v0.0.0-20190201213445-8bfbb3761dd9
require github.com/darren/gpac v0.0.0-20190202020719-b4a16711f2e5
4 changes: 2 additions & 2 deletions go.sum
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
github.com/darren/gpac v0.0.0-20190201213445-8bfbb3761dd9 h1:ZdChUAy7uNXVxyObaARITULXNZj/0fqE3RHlZ/ktqYQ=
github.com/darren/gpac v0.0.0-20190201213445-8bfbb3761dd9/go.mod h1:fK76ZiaaM0f4rW2A3sTomlo/wlY9jRV07KJ66DbOAXs=
github.com/darren/gpac v0.0.0-20190202020719-b4a16711f2e5 h1:6YKbXS8ZKL+ZXLd/KqTAXzfF//M43ZtWsxr21C1NsGU=
github.com/darren/gpac v0.0.0-20190202020719-b4a16711f2e5/go.mod h1:fK76ZiaaM0f4rW2A3sTomlo/wlY9jRV07KJ66DbOAXs=
github.com/robertkrimen/otto v0.0.0-20180617131154-15f95af6e78d h1:1VUlQbCfkoSGv7qP7Y+ro3ap1P1pPZxgdGVqiTVy5C4=
github.com/robertkrimen/otto v0.0.0-20180617131154-15f95af6e78d/go.mod h1:xvqspoSXJTIpemEonrMDFq6XzwHYYgToXWj5eRX1OtY=
gopkg.in/sourcemap.v1 v1.0.5 h1:inv58fC9f9J3TK2Y2R1NPntXEn3/wjWHkonhIUODNTI=
Expand Down
7 changes: 5 additions & 2 deletions main.go
Original file line number Diff line number Diff line change
Expand Up @@ -110,6 +110,8 @@ func transfer(destination io.WriteCloser, source io.ReadCloser) {
}

func (s *Server) handleHTTP(w http.ResponseWriter, req *http.Request) {
var perr error

proxies, err := s.pac.FindProxy(req.URL.String())
if err != nil {
http.Error(w, err.Error(), http.StatusServiceUnavailable)
Expand All @@ -119,7 +121,8 @@ func (s *Server) handleHTTP(w http.ResponseWriter, req *http.Request) {
req.RequestURI = ""

for _, proxy := range proxies {
resp, err := proxy.Do(req)
resp, err := proxy.Transport().RoundTrip(req)
perr = err
if err != nil {
continue
}
Expand All @@ -136,7 +139,7 @@ func (s *Server) handleHTTP(w http.ResponseWriter, req *http.Request) {
}
}

log.Printf("[%s] %s %v FAILED", req.RemoteAddr, req.Method, req.URL)
log.Printf("[%s] %s %v FAILED: %v", req.RemoteAddr, req.Method, req.URL, perr)
http.Error(w, "No Proxy Available", http.StatusServiceUnavailable)
}

Expand Down

0 comments on commit 0567dae

Please sign in to comment.