ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • NODE.JS 공유폴더 경로문제 & Express 기초이론
    백엔드 2023. 8. 7. 10:29
    728x90

    https://deface.tistory.com/55

     

    [Windows]윈도우에서 명령 프롬프트(CMD) pushd 명령으로 네트워크 드라이브 사용

    업무에 필요한 파일을 한곳으로 모으고자 보통의 경우 NAS나 일반 PC의 공유 폴더 기능을 통해 사용하고 계실 겁니다. 일반적인 경우 윈도우의 실행창 과 익스플로러 창에서 \\을 기입하시고 그

    deface.tistory.com

    const express = require('express') // 모듈 임포트
    const app = express() 
    const port = 3000 // 서버 포트
    
    // 미들웨어 (middleware)
    // 미들웨어 중에서 라우트 경로가 포함된 미들웨어 -> 라우트 핸들러 함수
    // 라우트 (route)
    // HTTP 메서드 (GET, POST, PUT, DELETE)
    app.get('/', (req, res) => {
        res.send('Hello World !')
    })
    
    app.post('/', function (req, res){
        res.send('Got a POST request')
    })
    app.put('/user', function (req, res){
        res.send('Got a PUT request at /user')
    })
    // req: request (요청 객체)
    // res: response (응답 객체)
    app.delete('/user', function(req, res){
        res.send('Got a DELETE request at /user')
    })
    
    // 서버를 구동하고 브라우저 요청을 기다림
    app.listen(port, () => {
        console.log(`Example app listening on port ${port}`)
    })
    const express = require('express') // 모듈 임포트
    const app = express() 
    const port = 3000 // 서버 포트
    
    // 모든 요청에 대하여 항상 실행되는 미들웨어 
    const myLogger = function (req, res, next){
        console.log(`LOGGED - ${new Date()}`)
        next() // 요청을 그 다음 미들웨어로 넘겨주는 함수
    }
    
    // 미들웨어 등록
    app.use(myLogger)
    
    app.get('/', function (req, res){ // 미들웨어 - 라우트핸들러 함수
        res.send('Hellow world!')
    })
    
    // 서버를 구동하고 브라우저 요청을 기다림
    app.listen(port, () => {
        console.log(`Example app listening on port ${port}`)
    })
    const express = require('express') // 모듈 임포트
    const app = express() 
    const port = 3000 // 서버 포트
    
    // 모든 요청에 대하여 항상 실행되는 미들웨어 
    // req, res 객체도 중간에서 변경함 
    // req : { requestTime: 'Mon Aug 07 2023 11:01:07 GMT+0900'}
    const myLogger = function (req, res, next){
        req.requestTime = new Date()
        console.log(`LOGGED - ${req.requestTime}`)
        next() // 요청을 그 다음 미들웨어로 넘겨주는 함수
    }
    
    // 미들웨어 등록
    app.use(myLogger)
    
    app.get('/', function (req, res){ // 미들웨어 - 라우트핸들러 함수
        res.send(`Hellow world! - ${req.requestTime}`)
    })
    
    // 서버를 구동하고 브라우저 요청을 기다림
    app.listen(port, () => {
        console.log(`Example app listening on port ${port}`)
    })
    const express = require('express') // 모듈 임포트
    const app = express() 
    const port = 3000 // 서버 포트
    
    app.use(function (req, res, next){
        console.log('Time:', Date.now())
        next() // 아직 서버에서 처리가 끝나지 않은 상태
    })
    
    // :id : URL 파라미터 (/user/12345)
    // use : 모든 HTTP 메서드에 대하여 해당 경로와 일치하면 실행
    app.use('/user/:id', function (req, res, next){
        console.log('Request URL: ', req.originalUrl)
        next()
    }, function (req, res, next){
        console.log('Request Type: ', req.method)
        next()
    })
    app.get('/user/:id', function (req, res, next){
        console.log('유저 ID: ', req.params.id)
        next()
    }, function (req, res, next){
        res.send('User Info') // 이미 종료 
    })
    // 영원히 실행되지 않는 코드
    app.get('/user/:id', function (req, res, next){
        res.send(req.params.id)
    })
    
    app.listen(port, () => {
        console.log(`Example app listening on port ${port}`)
    })
    const express = require('express') // 모듈 임포트
    const app = express() 
    const port = 3000 // 서버 포트
    
    app.use(function (req, res, next){
        console.log('Time:', Date.now())
        next() // 아직 서버에서 처리가 끝나지 않은 상태
    })
    
    // :id : URL 파라미터 (/user/12345)
    // use : 모든 HTTP 메서드에 대하여 해당 경로와 일치하면 실행
    app.use('/user/:id', function (req, res, next){
        console.log('Request URL: ', req.originalUrl)
        next()
    }, function (req, res, next){
        console.log('Request Type: ', req.method)
        next()
    })
    app.get('/user/:id', function (req, res, next){
        if(req.params.id == 0) next('route')
        else next()
    }, function (req, res, next){
        // 일반 홈페이지
        res.send('일반 사용자')
    })
    // req.params.id === 0 인 경우 실행
    app.get('/user/:id', function (req, res, next){
        res.send('관리자 유저')
        // 어드민 페이지 
    })
    
    app.listen(port, () => {
        console.log(`Example app listening on port ${port}`)
    })
    const express = require('express') // 모듈 임포트
    const app = express() 
    const router = express.Router()
    
    const port = 3000 // 서버 포트
    
    router.use(function (req, res, next){
        console.log('Time:', Date.now())
        next() // 아직 서버에서 처리가 끝나지 않은 상태
    })
    
    // :id : URL 파라미터 (/user/12345)
    // use : 모든 HTTP 메서드에 대하여 해당 경로와 일치하면 실행
    router.use('/user/:id', function (req, res, next){
        console.log('Request URL: ', req.originalUrl)
        next()
    }, function (req, res, next){
        console.log('Request Type: ', req.method)
        next()
    })
    router.get('/user/:id', function (req, res, next){
        if(req.params.id == 0) next('route')
        else next()
    }, function (req, res, next){
        // 일반 홈페이지
        res.send('일반 사용자')
    })
    // req.params.id === 0 인 경우 실행
    router.get('/user/:id', function (req, res, next){
        res.send('관리자 유저')
        // 어드민 페이지 
    })
    
    app.use('/api', router) // 서브 URL 에 대한 처리로직을 생성
    app.use('/users', router2)
    app.use('/comments', router3)
    
    //  /api 라는 URL 주소부터 시작해서 하위에 서브 URL 을 만들어서
    // 그 안에 라우트핸들러 함수로 실행 
    
    app.listen(port, () => {
        console.log(`Example app listening on port ${port}`)
    })
    728x90
Designed by Tistory.