Код: Выделить всё
export async function POST(request: Request) {
const session = auth();
if (!session) {
return new Response('Unauthorized', {
status: 401,
})
}
try {
const res = await request.json();
if (res) {
const order: OrderType | null = prepareOrder(res);
if (!order) {
return new Response('Order not created', {
status: 400,
})
}
//connect to the database
await dbConnect();
//create a new order document in the database
const newOrder = new Order(order);
await newOrder.save();
revalidatePath('/orders2');
//send server side event to the client
notifyListeners(order);
return new Response('Success!', {
status: 200,
})
} else {
return new Response('', {
status: 400,
})
}
// eslint-disable-next-line @typescript-eslint/no-explicit-any
} catch (error: any) {
return new Response(`Webhook error: ${error.message}`, {
status: 400,
})
}
}
< /code>
Вот я переоцениваю пользовательский интерфейс /orders2 < /code> страницы. Но это не переигрывает свежие данные из БД и не обновляет пользовательский интерфейс.import getOrders from '@/actions/woocommerce/getOrders'
import React from 'react'
async function page() {
const orders = await getOrders();
return (
{
orders.map(order => (
{order.order_id}
{order?.amount}
))
}
)
}
export default page
Подробнее здесь: https://stackoverflow.com/questions/793 ... next-js-15