fix Analyse

This commit is contained in:
nadja
2026-08-26 15:07:55 +02:00
parent e0ef034463
commit eab8e82674

View File

@@ -0,0 +1,41 @@
import fetch from 'node-fetch';
const INSTAGRAM_TOKEN = process.env.INSTAGRAM_TOKEN;
export async function getInstagramData(url) {
const reelMatch = url.match(/instagram\.com\/(?:p|reel)\/([A-Za-z0-9_-]+)/);
const usernameMatch = url.match(/instagram\.com\/([^/]+)\//);
if (INSTAGRAM_TOKEN) {
try {
const oembedUrl = `https://graph.facebook.com/v18.0/instagram_oembed?url=${encodeURIComponent(url)}&fields=author_name,thumbnail_url,title,html&access_token=${INSTAGRAM_TOKEN}`;
const response = await fetch(oembedUrl);
if (response.ok) {
const data = await response.json();
return {
title: data.title || '',
author: data.author_name || '',
authorUrl: `https://www.instagram.com/${data.author_name || ''}`,
thumbnail: data.thumbnail_url || '',
embedHtml: data.html || '',
reelId: reelMatch ? reelMatch[1] : null,
};
}
} catch (e) {
console.error('Instagram oEmbed Fehler:', e.message);
}
}
return {
title: '',
author: usernameMatch ? usernameMatch[1] : '',
authorUrl: usernameMatch ? `https://www.instagram.com/${usernameMatch[1]}` : '',
thumbnail: '',
embedHtml: '',
reelId: reelMatch ? reelMatch[1] : null,
};
}
export function isInstagramUrl(url) {
return /instagram\.com\/(p|reel)\//.test(url);
}