Replace fatal error handling with proper error propagation and logging

This commit is contained in:
2025-05-14 14:55:13 +03:30
parent a9dc376409
commit 8c7cfbd956
2 changed files with 3 additions and 7 deletions

View File

@@ -24,7 +24,8 @@ func main() {
var posts []models.Post = nil
err, posts := appContext.PostService.GetPostsFromApi(ctx, appContext.Tag, appContext.Instance)
if err != nil {
log.Fatal(err)
log.Println(err)
return
}
var existingPostIds = appContext.PostService.GetExistingPostIds()

View File

@@ -5,7 +5,6 @@ import (
"context"
"encoding/json"
"fmt"
"log"
"net/http"
"strings"
@@ -26,24 +25,20 @@ func (*PostService) GetPostsFromApi(ctx context.Context, tag string, instance st
var requestUrl = instance + "/api/v1/timelines/tag/" + tag + "?limit=40"
req, err := http.NewRequestWithContext(ctx, "GET", requestUrl, nil)
if err != nil {
log.Fatal(err)
return err, nil
}
resp, err := http.DefaultClient.Do(req)
if err != nil {
log.Fatal(err)
return err, nil
}
if resp.StatusCode != 200 || strings.Split(strings.ToLower(resp.Header.Get("Content-Type")), ";")[0] != "application/json" {
log.Fatal("Status code:", resp.StatusCode, " Content-Type:", resp.Header.Get("Content-Type"))
return err, nil
return fmt.Errorf("Status code:", resp.StatusCode, " Content-Type:", resp.Header.Get("Content-Type")), nil
}
var posts []models.Post = nil
err = json.NewDecoder(resp.Body).Decode(&posts)
if err != nil {
log.Fatal(err)
return err, nil
}
// defer: it basically means "do this later when the function returns"