package httpclient import ( "github.com/imroc/req/v3" "github.com/zbronya/free-chat-to-api/config" "net/http" ) type ReqClient struct { client *req.Client } func NewReqClient() *ReqClient { return &ReqClient{ client: req.C(). ImpersonateChrome().SetProxyURL(config.ProxyUrl), } } func (r *ReqClient) Get(url string, headers map[string]string) (*http.Response, error) { resp, err := r.client.R(). SetHeaders(headers). Get(url) if err != nil { return nil, err } return resp.Response, nil } func (r *ReqClient) Post(url string, headers map[string]string, body []byte) (*http.Response, error) { resp, err := r.client.R(). SetHeaders(headers). SetBody(body). Post(url) if err != nil { return nil, err } return resp.Response, nil }