개발/node.js
[node.js] CRUD : read 기능 만들기
개발햄
2019. 8. 31. 20:41
fs.readFile('/etc/passwd', (err, data) => { if (err) throw err; console.log(data); });
var http = require('http');
var fs = require('fs');
var url = require('url');
var qs = require('querystring')
function templatHTML(tatle,list,body,data){
return \`
<title>WEB1 - ${tatle}</title>
<meta charset="utf-8">
# [Web](/)
${list}
${data}
${body}
<p>
</p>
\`;
}
function makeFlieList(filelist){
var list = '
';
var i = 0
while (i< filelist.length) {
list = list + \`<li><a href="/?id=${filelist\[i\]}">${filelist\[i\]}</a></li>\`;
i= i + 1;
}
list = list + '
';
return list
};
function makeInfo(tatle,filelist,description,data){
var list = makeFlieList(filelist,description);
var templat = templatHTML(tatle,list,\`
## ${tatle}
${description}\`,data);
return templat;
}
var app = http.createServer(function(request,response){
var \_url = request.url;
var queryData = url.parse(\_url,true).query;
var pathname = url.parse(\_url,true).pathname;
if(pathname === '/'){
if(queryData.id === undefined){
fs.readdir('./data',function( error,filelist){
var templat = makeInfo('welcome',filelist,'hello node.js','<a href="/create">create</a>');
response.writeHead(200);
response.end(templat);
})
}else{
fs.readdir('./data',function( error,filelist){
fs.readFile(\`data/${queryData.id}\`,'utf8',function(err,description){
var tatle = queryData.id;
var templat = makeInfo(tatle,filelist,description,
\`<a href="/create">create</a>
<a href="/update?id=${tatle}">update</a>
<form action="/delete\_process" method="post">
<input type="hidden" name="id" value ="${tatle}">
<input type="submit" value = "delete">
</form>
\`);
response.writeHead(200);
response.end(templat);
});
});
}
}