npm fs / 기타 관련 코드

오미희·2021년 6월 3일
0

node.js

목록 보기
3/5

출처 nodejs교과서 책 개정 2판

  • fs.readFlile()

  • fs.writeFile()

  • fs.mkdir()

const fs = require('fs');
//readFile -> 해당 파일 내용을 가져와준다.
fs.readFile('./index.html',(err,data)=>{
    if(err){
        throw err;
    }
    console.log(data);
    // 사람이 보기 쉬운 string 형식으로 변환한 것
    console.log(data.toString());
})

const fsPromise = fs.promises;
fsPromise.readFile('./index.html')
    .then((data)=>{
        console.log(data,'=========================');
        console.log(data.toString());
    })
    .catch((err)=>{
        console.error(err);
    })
// 해당 파일에 뒤에 인수로 준 값을 작성
fsPromise.writeFile('./index.txt','fs의 writeFile을 이용');

fs.mkdir('makefolder');



========================================================================
//많이 사용되는 npm관련하여 기본 세팅과 관련한 코드 
  //express
  //morgan
  //cookieParser
  //bodyParser
  
const express = require('express')
const app = express()
require('dotenv').config('env')
// dotenv사용을 위한 세팅
// env 파일 안에 PORT=3010 이와 같이 키=값 형식으로 저장후
// 실제 사용시에는 아래와 같이 process.env.PORT 이렇게 사용 
// ||는 만약에 해당 키가 존재하지 않을 경우 3010의 값을 사용하겠다.
const port = process.env.PORT||3010
const morgan = require('morgan')
// morgan 미들웨어는 logging 즉 상태에 대한 기록을 보여주는 미들웨어
const cookieParser = require('cookie-parser')
const bodyParser = require('body-parser')
// 쿠키 파싱을 돕는 미들웨어


app.use(express.urlencoded({extended:false}))

app.use(morgan(':method:url'))
// method와 url에 대한 정보만 보여줌
//app.use(morgan('tiny'));
// morgan()의 안에 오는 인자에 따라 보여주는 내용이 다르다.
// http://expressjs.com/en/resources/middleware/morgan.html 관련 
app.use(cookieParser())
// cookie-parser사용
// req를 통해 cookies 객체에 접근 가능

app.get('/',(req,res)=>{    
    if(req.cookies.remember){ 
        // cookie-parser를 통해 request객체의 쿠키에 접근 가능
        // 즉 해당 /에 들어왔을 때 쿠키에 remember이 있다면 아래의 내용을 실행
        //console.log('if')
        res.send('Remembered :).Click to <a href="/forget">forget</a>')        
    }else{
        // remember이 없다면
        // 아래의 내용을 실행
        //console.log('else')
        res.send('<form method="post"><p>check to<label>'
        +'<input type="checkbox" name="remember"/> remberer me</label>'
        +'<input type="submit" value="제출"/>0</p></form>')
    }    
})

app.get('./forget',function(req,res){
    res.clearCookie('remberer');
    res.redirect('back');
})

app.post('/',(req,res)=>{
    let min = 60000
    if(req.body.remember) res.cookie('remember',1,{maxAge:min})
    res.redirect('back')
})


app.listen(port,()=>{
    console.log(`server start port${port}`)
    
})
profile
안녕하세요

0개의 댓글