()
| 223 | } |
| 224 | |
| 225 | func (req *Request) push() (*Response, error) { |
| 226 | var buf *bytes.Buffer |
| 227 | |
| 228 | if req.bodyJSON != nil { |
| 229 | body, err := json.Marshal(req.bodyJSON) |
| 230 | if err != nil { |
| 231 | req.err = err |
| 232 | return nil, req.err |
| 233 | } |
| 234 | buf = bytes.NewBuffer(body) |
| 235 | } else { |
| 236 | buf = bytes.NewBufferString(req.body) |
| 237 | } |
| 238 | |
| 239 | return req.send(buf, buf) |
| 240 | } |
| 241 | |
| 242 | func (req *Request) send(body io.Reader, buf *bytes.Buffer) (*Response, error) { |
| 243 | req.request, req.err = http.NewRequest(req.method, req.url, body) |