Fix upload URL

This commit is contained in:
2025-03-31 11:22:05 +02:00
parent 15d8238379
commit ad81718c99
3 changed files with 59 additions and 206 deletions

View File

@@ -2,6 +2,7 @@
* board-card controller
*/
import { factories } from "@strapi/strapi";
import puppeteer from "puppeteer";
export default factories.createCoreController(
"api::board-card.board-card",
@@ -18,8 +19,35 @@ export default factories.createCoreController(
ctx.request.body.data = JSON.parse(ctx.request.body.data);
switch (ctx.request.body.data.type) {
case "link":
break;
const browser = await puppeteer.launch();
const page = await browser.newPage();
await page.goto(ctx.request.body.data.url);
const buffer = await page.screenshot();
const blob = new Blob([buffer], {
type: "image/png",
});
const file = new File([blob], ctx.request.body.data.title + ".png");
await browser.close();
const payload2 = {
fileInfo: {
caption: "undefined",
alternativeText: ctx.request.body.data.title || "",
name: `${ctx.request.body.data.title}.png`,
},
};
const uploadResponse =
await strapi.plugins.upload.services.upload.upload({
data: payload2,
files: {
filepath: buffer,
originalFilename: "uploadurl.png",
mimetype: "image/png",
},
});
ctx.request.body.data.image = uploadResponse[0].id;
break;
case "link2":
case "image":
case "video":
case "audio":