func (c *Client) GetChat(r *Request) (*Response, error) { jsonData, err := json.Marshal(r) if err != nil { return nil, err } req, err := http.NewRequest("POST", c.url, bytes.NewBuffer(jsonData)) if err != nil { return nil, err } req.Header.Set("Content-Type", "application/json") req.Header.Set("Authorization", "Bearer "+c.apiKey) client := &http.Client{} httpResp, err := client.Do(req) if err != nil { return nil, err } defer func() { _ = httpResp.Body.Close() }() var resp Response err = json.NewDecoder(httpResp.Body).Decode(&resp) if err != nil { return nil, err } return &resp, nil }
Go http NewRequest POST gist
22 min read