👀 글 수정과 삭제
Node.js에서 글을 수정하고 삭제하는 방법을 알아본다.
✔ 글 수정
- pathname === '/update'
기존 파일에서 수정할 수 있도록fs.readfile
을 통해 기존 파일의title
과description
을 불러온다. 수정된 데이터를 전송할때는, 만약title
값이 수정될 경우를 대비해서,fileName
또한type='hidden'
으로 전송해준다
...
<form action="/update_process" method="post" enctype="multipart/form-data">
<input type="hidden" name="fileName" value="${title}">
...
- pathname === '/update_process'
enctype='multipart/form-data'
를 사용하므로 formidable을 사용하여 전송된 값을 받아주었다. 전송된 값을 바탕으로fs.rename(oldpath, newpath)
와fs.writeFile(path, description, callback)
을 이용해서 기존 파일을 재설정하고 파일을 새롭게 만들어 주었다.
let form = new formidable.IncomingForm();
form.parse(request, function(err, fields, files){
let fileName = fields.fileName;
let folder = fields.folder;
...
fs.rename(oldpath, newpath, function(err){
fs.writeFile(newpath, description, 'utf8', function(err){
fs.rename(oldpathImg, newpathImg, function(err){
...
✔ 글 삭제
- pathname === '/delete_process'
post 방식으로 전송된 데이터들을 받은 후fs.unlink(path, callback)
를 이용해서 파일을 삭제해 주었다.
...
request.on('data', function(data){
body = body + data;
})
request.on('end', function(){
let post = qs.parse(body);
let title = post.title;
...
fs.unlink(`./tab/${folder}/data/${title}`, function(error){
fs.unlink(`./tab/${folder}/img/${title}.png`, function(error){
...
👍 참고 사이트
'- > node.js' 카테고리의 다른 글
[NODE.JS] PM2 사용법 (0) | 2021.01.14 |
---|