어느 한 부분을 놓쳐버린 것 같아서 찾다가 너무 안돼서 질문드립니다.
app.post ('/add') 부분에서
await db.collection('post').insertOne(
{
title : 요청.body.title,
content : 요청.body.content,
img: 요청.file ? 요청.file.location : '',
user : 요청.user._id,
username : 요청.user.username
}
)
user : 요청.user._id,
console.log(요청.user._id) // undefined
conosle.log(요청.user.id) // user ID 가 제대로 나옵니다.
하지만 mongoDB에서는 user : "66b07b026dbecd59d3963f15" // object 형식으로 나옴
VSC 터미널에서는 User ID: 66b07b026dbecd59d3963f15 // 이런형식으로 나옴
서로 형식이 달라 삭제가 안되는거같은데 어느 부분에서 틀렸는지 감이 안잡힙니다..
del.delete('/delete', async (요청, 응답)=> {
try {
const result = await db.collection('post').deleteOne({
_id : new ObjectId(요청.query.docid),
user : new ObjectId(요청.user._id),
})
console.log('User ID:',요청.user._id);
if (result.deletedCount === 0 ) {
return 응답.status(403).send('삭제할 권한이 없습니다.');
}
응답.send('삭제완료');
} catch (e) {
console.log(e)
응답.status(500).send('서버에러')
}
});