From 82b73620ddefc78fbdf16859bcb633600a88eb35 Mon Sep 17 00:00:00 2001 From: michaelschal <35957947-michaelschal@users.noreply.replit.com> Date: Thu, 2 Oct 2025 14:14:42 +0000 Subject: [PATCH] Improve how posts are published and scheduled to Facebook Refactor FacebookService to correctly pass parameters via URL query strings for POST requests instead of request bodies in publishTextPost, publishPhotoPost, scheduleTextPost, and schedulePhotoPost methods. Replit-Commit-Author: Agent Replit-Commit-Session-Id: ae4037a0-2a6f-4530-9bac-79b543286bda Replit-Commit-Checkpoint-Type: full_checkpoint Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/397bca8c-984f-43ff-841a-10897aeb8140/ae4037a0-2a6f-4530-9bac-79b543286bda/c9jWr93 --- .replit | 4 ++++ server/services/facebook.ts | 20 ++++++++------------ 2 files changed, 12 insertions(+), 12 deletions(-) diff --git a/.replit b/.replit index ffeb98a..b6bf8b4 100644 --- a/.replit +++ b/.replit @@ -18,6 +18,10 @@ externalPort = 80 localPort = 5555 externalPort = 3002 +[[ports]] +localPort = 40011 +externalPort = 3003 + [[ports]] localPort = 40537 externalPort = 3000 diff --git a/server/services/facebook.ts b/server/services/facebook.ts index b5e9ed9..41e1d54 100644 --- a/server/services/facebook.ts +++ b/server/services/facebook.ts @@ -39,16 +39,15 @@ export class FacebookService { } private async publishTextPost(post: Post, page: SocialPage): Promise { - const url = `${this.baseUrl}/${page.pageId}/feed`; - const params = new URLSearchParams({ access_token: page.accessToken!, message: post.content, }); + const url = `${this.baseUrl}/${page.pageId}/feed?${params.toString()}`; + const response = await fetch(url, { method: 'POST', - body: params, }); if (!response.ok) { @@ -61,8 +60,6 @@ export class FacebookService { } private async publishPhotoPost(post: Post, page: SocialPage, media: Media): Promise { - const url = `${this.baseUrl}/${page.pageId}/photos`; - // Use the Facebook Feed optimized URL (1200x630) const photoUrl = media.facebookFeedUrl || media.originalUrl; @@ -72,9 +69,10 @@ export class FacebookService { url: photoUrl, }); + const url = `${this.baseUrl}/${page.pageId}/photos?${params.toString()}`; + const response = await fetch(url, { method: 'POST', - body: params, }); if (!response.ok) { @@ -120,8 +118,6 @@ export class FacebookService { } private async scheduleTextPost(post: Post, page: SocialPage, scheduledTimestamp: number): Promise { - const url = `${this.baseUrl}/${page.pageId}/feed`; - const params = new URLSearchParams({ access_token: page.accessToken!, message: post.content, @@ -129,9 +125,10 @@ export class FacebookService { scheduled_publish_time: scheduledTimestamp.toString(), }); + const url = `${this.baseUrl}/${page.pageId}/feed?${params.toString()}`; + const response = await fetch(url, { method: 'POST', - body: params, }); if (!response.ok) { @@ -144,8 +141,6 @@ export class FacebookService { } private async schedulePhotoPost(post: Post, page: SocialPage, scheduledTimestamp: number, media: Media): Promise { - const url = `${this.baseUrl}/${page.pageId}/photos`; - const photoUrl = media.facebookFeedUrl || media.originalUrl; const params = new URLSearchParams({ @@ -156,9 +151,10 @@ export class FacebookService { scheduled_publish_time: scheduledTimestamp.toString(), }); + const url = `${this.baseUrl}/${page.pageId}/photos?${params.toString()}`; + const response = await fetch(url, { method: 'POST', - body: params, }); if (!response.ok) {