UNPKG

@hope-dies-here/next-blog-one

Version:

A plug-and-play Next.js blog feature for easy integration via npx.

36 lines (29 loc) 1.04 kB
import { NextResponse } from 'next/server'; import pool from '../../lib/db'; export async function GET() { try { // List all posts const { rows } = await pool.query('SELECT * FROM posts ORDER BY created_at DESC'); return NextResponse.json(rows); } catch (error) { console.error('Database error:', error); return NextResponse.json({ error: 'Internal server error' }, { status: 500 }); } } export async function POST(request) { try { // Create a new post const { title, content } = await request.json(); if (!title || !content) { return NextResponse.json({ error: 'Title and content are required' }, { status: 400 }); } const { rows } = await pool.query( 'INSERT INTO posts (title, content) VALUES ($1, $2) RETURNING *', [title, content] ); return NextResponse.json(rows[0], { status: 201 }); } catch (error) { console.error('Database error:', error); return NextResponse.json({ error: 'Internal server error' }, { status: 500 }); } }