I am trying to post a json with xml message inside it. However it returns
invalid character 'b' looking for beginning of value
I think the possible reason is that I am trying to marshal the returns body which is not in json format.
func (s *BackendConfiguration) Do(req *http.Request, v interface{}) error {
log.Printf("Requesting %v %v%v
", req.Method, req.URL.Host, req.URL.Path)
start := time.Now()
res, err := s.HTTPClient.Do(req)
if debug {
log.Printf("Completed in %v
", time.Since(start))
}
if err != nil {
log.Printf("Request to sakura failed: %v
", err)
return err
}
defer res.Body.Close()
resBody, err := ioutil.ReadAll(res.Body)
if err != nil {
log.Printf("Cannot parse sakura response: %v
", err)
return err
}
if debug {
log.Printf("sakura response: %q
", resBody)
}
if v != nil {
return json.Unmarshal(resBody, v)
}
return nil
}
The error happened at this line
return json.Unmarshal(resBody, v)