Feature logs

Deskripsi:
- Fitur baru log untuk melihat error pada server upload
- Baru di terapkan di create profile
This commit is contained in:
2024-12-16 15:41:02 +08:00
parent 4dd98c6183
commit 0bdc25b1e6
19 changed files with 815 additions and 349 deletions

View File

@@ -0,0 +1,53 @@
import { funGetDirectoryNameByValue } from "@/app_modules/_global/fun/get";
import backendLogger from "@/util/backendLogger";
import { NextResponse } from "next/server";
export async function DELETE(req: Request) {
const data = await req.json();
const id = data.fileId;
const dirId = data.dirId;
const keyOfDirectory = await funGetDirectoryNameByValue({
value: dirId,
});
if (req.method === "DELETE") {
try {
const res = await fetch(
`https://wibu-storage.wibudev.com/api/files/${id}/delete`,
{
method: "DELETE",
headers: {
Authorization: `Bearer ${process.env.WS_APIKEY}`,
},
}
);
backendLogger.info("Server status code: " + res.status);
const data = await res.json();
if (res.ok) {
backendLogger.info(
`Success delete ${keyOfDirectory}`
);
return NextResponse.json({ success: true });
} else {
const errorText = await res.json();
backendLogger.error(
`Failed delete ${keyOfDirectory}: ` + errorText.message
);
return NextResponse.json({
success: false,
message: errorText.message,
});
}
} catch (error) {
backendLogger.error(`Delete error ${keyOfDirectory}:`, error);
return NextResponse.json({
success: false,
message: "An unexpected error occurred",
});
}
} else {
backendLogger.error(`Error upload ${keyOfDirectory}: Method not allowed`);
return NextResponse.json({ success: false, message: "Method not allowed" });
}
}

View File

@@ -0,0 +1,58 @@
import { funGetDirectoryNameByValue } from "@/app_modules/_global/fun/get";
import backendLogger from "@/util/backendLogger";
import { NextResponse } from "next/server";
export async function POST(request: Request) {
const formData = await request.formData();
const valueOfDir = formData.get("dirId");
const keyOfDirectory = await funGetDirectoryNameByValue({
value: valueOfDir as string,
});
if (request.method === "POST") {
try {
const res = await fetch("https://wibu-storage.wibudev.com/api/upload", {
method: "POST",
body: formData,
headers: {
Authorization: `Bearer ${process.env.WS_APIKEY}`,
},
});
backendLogger.info("Server status code: " + res.status);
const dataRes = await res.json();
if (res.ok) {
backendLogger.info(
`Success upload ${keyOfDirectory}: ${JSON.stringify(dataRes.data)}`
);
return NextResponse.json(
{ success: true, data: dataRes.data },
{ status: 200 }
);
} else {
const errorText = await res.text();
backendLogger.error(`Failed upload ${keyOfDirectory}: ${errorText}`);
return NextResponse.json(
{ success: false, message: errorText },
{ status: 400 }
);
}
} catch (error) {
backendLogger.error(`Error upload ${keyOfDirectory}: ${error}`);
return NextResponse.json(
{
success: false,
message: "An unexpected error occurred",
},
{ status: 500 }
);
}
} else {
backendLogger.error(`Error upload ${keyOfDirectory}: Method not allowed`);
return NextResponse.json(
{ success: false, message: "Method not allowed" },
{ status: 405 }
);
}
}

View File

@@ -1,51 +0,0 @@
import { NextResponse } from "next/server";
export async function POST(request: Request) {
const WS_APIKEY = process.env.WS_APIKEY;
console.log(WS_APIKEY);
try {
const formData = await request.formData();
const res = await fetch("https://wibu-storage.wibudev.com/api/upload", {
method: "POST",
body: formData,
headers: {
Authorization: `Bearer ${process.env.WS_APIKEY}`,
},
});
// if (res.ok) {
// console.log("Berhasil");
// const hasil = await res.json();
// return { success: true, data: hasil.data };
// } else {
// const errorText = await res.text();
// return { success: false, data: {} };
// }
} catch (error) {
console.log(error);
}
// try {
// const res = await fetch("https://wibu-storage.wibudev.com/api/upload", {
// method: "POST",
// body: formData,
// headers: {
// Authorization: `Bearer ${process.env.WS_APIKEY}`,
// },
// });
// if (res.ok) {
// const hasil = await res.json();
// return { success: true, data: hasil.data };
// } else {
// const errorText = await res.text();
// return { success: false, data: {} };
// }
// } catch (error) {
// console.error("Upload error:", error);
// return { success: false, data: {} };
// }
return NextResponse.json({ success: true });
}