GolangのCGIできたリクエストをそのまま別のサーバに送信したいのですが、下記の方法だとBody部分が削除されてしまいます。

どのように修正すればBodyも送信できますでしょうか。

package main

import (
    "fmt"
    "io/ioutil"
    "net/http"
    "net/http/cgi"
    "path/filepath"
    "strings"
)

func main() {
    if err := cgi.Serve(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {

        // ヘッダをセット
        header := w.Header()
        header.Set("Content-Type", "text/html; charset=utf-8")

        // Requestを生成
        newRequest, err := http.NewRequest(r.Method, "[address]"+proxyPath+"?"+formValue.Encode(), r.Body)
        if err != nil {
            //fmt.Fprintln(w, err)
            fmt.Println(err)
        }
        client := &http.Client{}

        // Request
        resp, err := client.Do(newRequest)
        if err != nil {
            //fmt.Fprintln(w, err)
            fmt.Println(err)
        }
        defer resp.Body.Close()
        b, err := ioutil.ReadAll(resp.Body)
        if err != nil {
            //fmt.Fprintln(w, err)
            fmt.Println(err)
        }

        // 結果を出力
        fmt.Fprintf(w, string(b))
    })); err != nil {
        fmt.Println(err)
    }
}