From 716475fd4e4bcee04b4b3da3f00c1146a0c2f949 Mon Sep 17 00:00:00 2001 From: RafaelCaso <94573618+RafaelCaso@users.noreply.github.com> Date: Thu, 3 Oct 2024 10:34:19 -0400 Subject: [PATCH] replace node-fetch with native --- packages/nextjs/app/api/check-copyright/route.ts | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/packages/nextjs/app/api/check-copyright/route.ts b/packages/nextjs/app/api/check-copyright/route.ts index dbd8d41..b5c918b 100644 --- a/packages/nextjs/app/api/check-copyright/route.ts +++ b/packages/nextjs/app/api/check-copyright/route.ts @@ -1,7 +1,5 @@ import { NextRequest, NextResponse } from "next/server"; import crypto from "crypto"; -import FormData from "form-data"; -import fetch from "node-fetch"; const ACR_SECRET: string = process.env.NEXT_PUBLIC_ACR_SECRET || ""; @@ -67,8 +65,9 @@ export async function POST(req: NextRequest) { ); const signature = sign(stringToSign, defaultOptions.access_secret); + // Use native FormData API in Node.js 18+ const form = new FormData(); - form.append("sample", buffer, { filename: "sample.mp3" }); + form.append("sample", new Blob([buffer]), "sample.mp3"); form.append("sample_bytes", buffer.length.toString()); form.append("access_key", defaultOptions.access_key); form.append("data_type", defaultOptions.data_type); @@ -76,11 +75,10 @@ export async function POST(req: NextRequest) { form.append("signature", signature); form.append("timestamp", timestamp.toString()); - const formStream = form as unknown as NodeJS.ReadableStream; - + // Native fetch in Node.js 18+ const acrResponse = await fetch(`https://${defaultOptions.host}${defaultOptions.endpoint}`, { method: "POST", - body: formStream, + body: form, }); const acrResponseText = await acrResponse.text();