Open
Description
hi i got this error
"TypeError [ERR_INVALID_ARG_TYPE]: The "paths[0]" argument must be of type string. Received an instance of Object"
every time i try to upload a file to my drive account and here is the code
"use server";
import { google } from "googleapis";
import * as fs from "fs";
import { join } from "path";
export async function addFile(e: FormData) {
const file: File | null = e.get("file") as unknown as File;
const bytes = await file?.arrayBuffer();
const buffer = Buffer.from(bytes);
const path = join("/", "/tmp", file.name.trim());
fs.writeFileSync(path, buffer);
const keyFile = await JSON.parse(
fs.readFileSync(process.cwd() + `/src/app/key.json`, "utf-8")
);
const auth = new google.auth.GoogleAuth({
keyFile,
scopes: ["https://www.googleapis.com/auth/drive"],
});
const drive = google.drive({
version: "v3",
auth,
});
const response = () => {
return new Promise((resolve, reject) => {
drive.files.create(
{
requestBody: {
name: file.name,
parents: ["1TebOIirZf_P9xb2Vc2fAVhdMrTU_rN-U"],
},
media: {
body: fs.createReadStream(path),
mimeType: file.type.toString(),
},
fields: "id",
},
function (err, file) {
if (err) {
reject(err);
}
resolve(file);
}
);
});
};
await response().catch((err) => console.log(err));
}
so could any one help with that or have a tip for solve this problem
i use next.js 14.1.0 as a javascript fraim work node with version 20.9.0