FRONT-END next.js
const checkSharedPosts = async (articleUrl: string) => {
fetch(
'/api/check-fb-posts',
postRequestOptions({
accessToken,
siteUrl: articleUrl,
}),
)
.then((res) => {
return res.json();
})
.then((data) => {
console.log('checkSharedPosts:', data);
})
.catch((err) => {
console.error('checkSharedPosts:', err);
});
};
BACK-END nest.js
@Post('/check-fb-posts')
async checkFbPosts(@Body() body: { accessToken: string; siteUrl: string }) {
const { accessToken, siteUrl } = body;
// Graph API руу сүүлийн 10 пост авах
const url =
`https://graph.facebook.com/me/posts` +
`?fields=id,message,permalink_url,created_time&limit=10&access_token=${accessToken}`;
const res = await fetch(url);
const data = await res.json();
// Сүүлд 10 постоос таны сайтын URL байгаа эсэхийг шалгах
const found = data.data.find(
(post: any) =>
(post.message && post.message.includes(siteUrl)) ||
(post.permalink_url && post.permalink_url.includes(siteUrl)),
);
return { founded: !!found, posts: data.data };
}
No comments:
Post a Comment