diff options
Diffstat (limited to 'backend/main.go')
| -rw-r--r-- | backend/main.go | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/backend/main.go b/backend/main.go index d5fbb91..f6851da 100644 --- a/backend/main.go +++ b/backend/main.go @@ -21,6 +21,7 @@ var ( frontendURL string sessionsMutex sync.RWMutex sessions = make(map[string]*auth.OAuthState) + notesCache *fetchers.Cache ) func init() { @@ -51,6 +52,8 @@ func init() { logger = slog.New(slog.NewTextHandler(os.Stdout, &slog.HandlerOptions{ Level: logLevel, })) + + notesCache = fetchers.NewCache() } func loginHandler(w http.ResponseWriter, r *http.Request) { @@ -266,6 +269,7 @@ func postsHandler(w http.ResponseWriter, r *http.Request) { logger.Debug("session public key", "key", session.KeyPair.PublicKey) } + // Check for access token refresh needsRefresh := time.Now().After(session.ExpiresAt) pds := session.PDS refreshToken := session.RefreshToken @@ -289,7 +293,8 @@ func postsHandler(w http.ResponseWriter, r *http.Request) { sessionsMutex.Unlock() } - posts, err := fetchers.FetchAppBskyFeedPosts(session.DID, session.PDS, session.AccessToken, session.KeyPair) + // Fetch app.bsky.feed.post records + posts, err := fetchers.FetchAppBskyFeedPosts(logger, session.DID, session.PDS, session.AccessToken, session.KeyPair, notesCache) if err != nil { logger.Error("fetching app.bsky.feed.posts failed", "error", err) http.Error(w, err.Error(), http.StatusInternalServerError) |
