From 4991290699442268f1fcf3b29db839e64be16a8a Mon Sep 17 00:00:00 2001 From: GitHub Copilot Date: Thu, 24 Apr 2025 17:47:29 -0400 Subject: [PATCH] fix: Update API fetch calls to use absolute URLs for improved reliability --- README.md | 3 +++ src/pages/index.astro | 11 +++++++---- 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index 13047eb..d18d704 100644 --- a/README.md +++ b/README.md @@ -9,3 +9,6 @@ A web application for managing financial transactions across multiple bank accou * **Layout:** Features a two-column dashboard design with a sidebar for account selection/actions and a main area for transaction display. * **Data Management:** Currently uses an in-memory data store (`src/data/store.ts`) accessed via API endpoints (`src/pages/api/`). * **Key Features (Implemented & Planned):** Account switching, transaction listing, adding, editing, and deleting transactions. + +## Logs +This app is currently deployed using Cloudflare Pages. The logs can be viewed with the `npx wrangler pages deployment tail --project-name finance` command. T \ No newline at end of file diff --git a/src/pages/index.astro b/src/pages/index.astro index f41d9b3..d4ae559 100644 --- a/src/pages/index.astro +++ b/src/pages/index.astro @@ -9,8 +9,11 @@ export interface Props { transactions: Transaction[]; } -// Fetch accounts from API -const accountsResponse = await fetch('/api/accounts'); // Use relative path +// Get the base URL from the incoming request +const baseUrl = new URL(Astro.request.url).origin; + +// Fetch accounts from API using absolute URL +const accountsResponse = await fetch(`${baseUrl}/api/accounts`); const accounts: Account[] = await accountsResponse.json(); // Initialize with first account or empty account if none exist @@ -21,10 +24,10 @@ const initialAccount: Account = accounts[0] || { balance: 0 }; -// Fetch initial transactions if we have an account +// Fetch initial transactions if we have an account, using absolute URL let initialTransactions: Transaction[] = []; if (initialAccount.id) { - const transactionsResponse = await fetch(`/api/accounts/${initialAccount.id}/transactions`); // Use relative path + const transactionsResponse = await fetch(`${baseUrl}/api/accounts/${initialAccount.id}/transactions`); initialTransactions = await transactionsResponse.json(); } ---