code: func (c *Client) sendPost(jReq *jsonRequest) {
  	// Generate a request to the configured RPC server.
  	protocol := "http"
  	if !c.config.DisableTLS {
  		protocol = "https"
  	}
  	url := protocol + "://" + c.config.Host
  	bodyReader := bytes.NewReader(jReq.marshalledJSON)
  	httpReq, err := http.NewRequest("POST", url, bodyReader)
  	if err != nil {
  		jReq.responseChan <- &response{result: nil, err: err}
  		return
  	}
  	httpReq.Close = true
  	httpReq.Header.Set("Content-Type", "application/json")
  
  	// Configure basic access authorization.
  	httpReq.SetBasicAuth(c.config.User, c.config.Pass)
  
  	log.Tracef("Sending command [%s] with id %d", jReq.method, jReq.id)
  	c.sendPostRequest(httpReq, jReq)
  }
docs: // sendPost sends the passed request to the server by issuing an HTTP POST
  // request using the provided response channel for the reply.  Typically a new
  // connection is opened and closed for each command when using this method,
  // however, the underlying HTTP client might coalesce multiple commands
  // depending on several factors including the remote server configuration.