코드를 맞게 짰는데 계속 안돼서 보니까 method === 'DELETE' 였어서 안되는거였어요.
삭제 기능인데 왜 'DELETE'일 때는 동작 안하고 'POST'여야만 정상적으로 동작하는건가요?
```
</pre>
<pre>'use client';</pre>
<pre>import Link from 'next/link';</pre>
<pre>export default function ListItem({ result }) {
// console.log(result);
return (
<>
{result.map((e, i) => {
return (
<div className='list-item' key={i}>
<Link href={'/detail/' + result[i]._id}>
<h4>{e.title}</h4>
</Link>
<p>{e.content}</p>
<Link href={'/edit/' + result[i]._id} className='list-btn'>
✏️
</Link>
<button
onClick={() => {
fetch('/api/post/delete', {
method: 'POST',
body: result[i]._id,
});
}}
>
🗑️
</button>
</div>
);
})}
</>
);
}</pre>
<pre>```
```
</pre>
<pre>import { connectDB } from '@/util/database';
import { ObjectId } from 'mongodb';</pre>
<pre>export default async function handler(request, response) {
if (request.method === 'POST') {
// console.log(request.body);
try {
const client = await connectDB;
const db = client.db('forum');
let result = await db.collection('post').deleteOne({ _id: new ObjectId(request.body) });
console.log(result);
response.status(200).json('삭제 완료');
// response.status(200).redirect(302, '/list');
} catch {
response.status(500).json('삭제 error');
}
} else console.log('error');
}</pre>
<pre>```