Compare commits

..

1 Commits

Author SHA1 Message Date
58cb86af97 Added baseURL prefix 2025-11-16 14:22:05 +01:00
4 changed files with 26 additions and 18 deletions

View File

@@ -18,7 +18,7 @@ type BasketAPI struct {
func (a *BasketAPI) GetBasket(basketID string) (*basket.GetBasketResponseDTO, error) { func (a *BasketAPI) GetBasket(basketID string) (*basket.GetBasketResponseDTO, error) {
req := &basket.GetBasketRequestDTO{BasketID: basketID} req := &basket.GetBasketRequestDTO{BasketID: basketID}
res := new(basket.GetBasketResponseDTO) res := new(basket.GetBasketResponseDTO)
if err := a.httpClient.SendGet("/api/v1/basket", req, res); err != nil { if err := a.httpClient.SendGet("basket-svc", "/api/v1/basket", req, res); err != nil {
return nil, err return nil, err
} }
@@ -30,7 +30,7 @@ func (a *BasketAPI) GetBasketItems(basketID string) ([]*basket.GetBasketItemsRes
req := basket.GetBasketItemsRequestDTO{BasketID: basketID} req := basket.GetBasketItemsRequestDTO{BasketID: basketID}
var res []*basket.GetBasketItemsResponseDTO var res []*basket.GetBasketItemsResponseDTO
if err := a.httpClient.SendGet(url, req, &res); err != nil { if err := a.httpClient.SendGet("basket-svc", url, req, &res); err != nil {
return nil, err return nil, err
} }

View File

@@ -19,31 +19,37 @@ func NewHttpClient(baseURL string) *HttpClient {
func (c *HttpClient) SendGet(url string, data, out any) error { func (c *HttpClient) SendGet(url string, data, out any) error {
fmt.Printf("Sending req to: %s%s\n", c.baseURL, url) fmt.Printf("Sending req to: %s%s\n", c.baseURL, url)
res, err := c.sendRequest(url, http.MethodGet, data) res, err := c.sendRequest(c.baseURL, url, http.MethodGet, data)
if err != nil { if err != nil {
return err return err
} }
decoder := json.NewDecoder(res.Body) decoder := json.NewDecoder(res.Body)
defer res.Body.Close() err = decoder.Decode(&out)
return decoder.Decode(&out)
}
func (c *HttpClient) SendPost(url string, data, out any) error {
res, err := c.sendRequest(url, http.MethodPost, data)
if err != nil { if err != nil {
return err return err
} }
decoder := json.NewDecoder(res.Body) return nil
defer res.Body.Close()
return decoder.Decode(&out)
} }
func (c *HttpClient) sendRequest(url, method string, data any) (*http.Response, error) { func (c *HttpClient) SendPost(url string, data, out any) (any, error) {
apiUrl := c.baseURL + url res, err := c.sendRequest(c.baseURL, url, http.MethodPost, data)
if err != nil {
return nil, err
}
decoder := json.NewDecoder(res.Body)
err = decoder.Decode(out)
if err != nil {
return nil, err
}
return out, nil
}
func (c *HttpClient) sendRequest(baseURL, actionURL, method string, data any) (*http.Response, error) {
apiUrl := baseURL + actionURL
tr := &http.Transport{ tr := &http.Transport{
TLSClientConfig: &tls.Config{InsecureSkipVerify: true}, // FIXME dev mode TLSClientConfig: &tls.Config{InsecureSkipVerify: true}, // FIXME dev mode
@@ -68,6 +74,7 @@ func (c *HttpClient) sendRequest(url, method string, data any) (*http.Response,
if err != nil { if err != nil {
return nil, err return nil, err
} }
defer res.Body.Close()
return res, nil return res, nil
} }

View File

@@ -17,7 +17,8 @@ func (a *IdentityAPI) CheckAccess(url, srv string) (*identity.CheckAccessRespons
req := &identity.CheckAccessRequestDTO{URL: url, Service: srv} req := &identity.CheckAccessRequestDTO{URL: url, Service: srv}
res := new(identity.CheckAccessResponseDTO) res := new(identity.CheckAccessResponseDTO)
if err := a.httpClient.SendGet("/v1/access", req, res); err != nil { // targetURL := fmt.Sprintf("/v1/access?url=%s&srv=%s", url, srv)
if err := a.httpClient.SendGet("identity-svc", "/v1/access", req, res); err != nil {
return nil, err return nil, err
} }

View File

@@ -18,7 +18,7 @@ type PricingAPI struct {
func (a *PricingAPI) GetProductPrice(productID int) (*pricing.ProductPriceResponseDTO, error) { func (a *PricingAPI) GetProductPrice(productID int) (*pricing.ProductPriceResponseDTO, error) {
url := fmt.Sprintf("/api/v1/product/%d", productID) url := fmt.Sprintf("/api/v1/product/%d", productID)
res := new(pricing.ProductPriceResponseDTO) res := new(pricing.ProductPriceResponseDTO)
if err := a.httpClient.SendGet(url, nil, res); err != nil { if err := a.httpClient.SendGet("pricing-svc", url, nil, res); err != nil {
return nil, err return nil, err
} }