1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
import { generateHTMLFromRSS } from "https://esm.town/v/metart43/generateHTMLFromRSS";
import { fetchRSS } from "https://esm.town/v/stevekrouse/fetchRSS?v=12";
export async function webhookHandler(req: express.Request, res: express.Response) {
let page;
const ftRSSFeedRes = await fetchRSS(
"https://www.ft.com/news-feed?format=rss",
);
const rssFeedItems = ftRSSFeedRes?.channel?.item;
const channel = ftRSSFeedRes?.channel;
if (rssFeedItems) {
page = generateHTMLFromRSS({
rssFeedItems,
categoryLink: channel.link,
category: channel.category,
});
}
else {
page = { error: "Error generating FT RSS Feed" };
}
console.log({ page });
res.send(page);
}