in fc/http_handler.go [125:147]
func genHttpRequest(httpParams string, payload []byte) (*http.Request, error) {
data, err := base64.StdEncoding.DecodeString(httpParams)
if err != nil {
return nil, err
}
var params HTTPParams
if err = json.Unmarshal(data, ¶ms); err != nil {
return nil, err
}
// generate req.RequestURI, req.URL.{Path, RawQuery}
req, err := http.NewRequest(params.Method, params.RequestURI, bytes.NewBuffer(payload))
if err != nil {
return nil, err
}
req.URL.Path = params.Path
req.URL.Host = params.Host
req.RemoteAddr = params.ClientIP
req.Host = params.ClientIP
req.Header = params.HeadersMap
req.RequestURI = params.RequestURI
return req, nil
}