package main import ( "fmt" "io" "net/http" "net/url" "git.milar.in/milarin/adverr" "git.milar.in/milarin/ezhttp" ) var BaseURL = adverr.Must(url.Parse("http://desktop:30124")) func ProxyRequest(w http.ResponseWriter, r *http.Request) { req := ezhttp.Request( ezhttp.Method(r.Method), ezhttp.URL(BaseURL.JoinPath(r.URL.Path).String()), ezhttp.Body(ezhttp.Reader(r.Body)), ezhttp.ContentType("application/json"), ) resp, err := ezhttp.Do(req) if err != nil { fmt.Println(err) w.WriteHeader(http.StatusInternalServerError) return } defer resp.Body.Close() w.WriteHeader(resp.StatusCode) w.Header().Add("Content-Type", "application/json") io.Copy(w, resp.Body) }