Cara Membetulkan Ralat Pelayan Kod 500 Seterusnya JS API
P粉513316221
P粉513316221 2023-09-03 21:39:30
0
1
431

Saya cuba membina chatbot menggunakan model OPEN AI GPT 4 dalam NextJS. Walau bagaimanapun, apabila saya menghantar permintaan POST ke http://localhost:3001/api/generate, saya menerima respons dengan kod status 500 dan mesej ralat berikut:

TypeError: Tidak boleh membaca sifat yang tidak ditentukan (baca 'header').

/app/api/generate/route.ts

import { NextResponse } daripada "next/server"; import { Konfigurasi, OpenAIApi } daripada "openai"; konfigurasi const = Konfigurasi baru({ apiKey: process.env.OPENAI_API_KEY, }); const openai = OpenAIApi baharu(konfigurasi); eksport fungsi async POST(permintaan: Permintaan) { const body = tunggu request.json(); const { prompt } = badan; jika (!prompt || prompt === "") { kembalikan Respons baharu("Sila hantar gesaan anda", { status: 400 }); } cuba { const aiResult = tunggu openai.createCompletion({ model: "gpt-4", segera, suhu: 0.9, max_token: 8192, }); const aiText = aiResult.data.choices[0].text?.trim() || "Sesuatu telah berlaku!"; kembalikan NextResponse.json({ text: aiText }); } tangkap (ralat) { console.log(error); } }

Saya baru menggunakan NextJS 13, tetapi apabila saya cuba menghantar respons statik seperti "Hello World" saya tidak mendapat sebarang ralat

P粉513316221
P粉513316221

membalas semua (1)
P粉111927962

Laluan API

Next.js mengharapkan objek permintaan sebagai parameter pertama, bukan objek permintaan. Oleh itu, anda perlu menambahrequest: Request更改为req: NextApiRequestdalam kod anda. Selain itu, anda perlu menukar objek tindak balas daripada Respons kepada NextResponse.

Untuk permintaan, Daripada ini

export async function POST(request: Request) {

Di sini

export default async function generateAPI(req: NextApiRequest) {

Untuk maklum balas, Daripada ini

return new Response("Please send your prompt", { status: 400 });

Di sini

return new NextResponse("Please send your prompt", { status: 400 });
    Muat turun terkini
    Lagi>
    kesan web
    Kod sumber laman web
    Bahan laman web
    Templat hujung hadapan
    Tentang kita Penafian Sitemap
    Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!