[ TIL ]

Gorae·2021년 7월 25일
0

(TIL) Node.js

목록 보기
4/5
post-thumbnail

코딩 tip

  • early return

    • 로직을 따라가기가 쉬워져 가독성이 향상된다.
    • 에러(실패 조건)를 먼저 처리하게 되면, 아래 코드는 에러를 신경 쓸 필요가 없어진다.
  • import 하기 전에 export 먼저 해라.

// default 로 export
export default router;

import router from 파일 위치;

// 개별 export
export const firstController = (req, res) => res.send("First");
export const secondController = (req, res) => res.send("Second");

import { firstController, secondController } from 파일 위치;

GET/ POST method 차이

  • GET : database 로부터 정보를 받아낼 때 사용
  • POST : database 의 정보를 바꿀 때 사용

ES6 문법

// 두 식은 같은 식
const { id } = req.params;
const id = req.params.id;

console.log() / console.dir() 차이

https://developer.mozilla.org/ko/docs/Web/API/Console/log

  • console.log() 는 요소를 HTML 과 같은 트리 구조로 출력
  • console.dir() 는 요소를 JSON 과 같은 트리 구조로 출력

express 의 controller

  • controller 의 첫 번째 인자(argument)는 request,
    두 번째 인자는 response 로 기본 설정 되어있다.
// handleHome 이라는 이름을 가진 controller
const handleHome = (req, res) => {
  return res.send("Hello");
};

자주 쓰는 express methods

application

  • app.get(path, callback)
app.get("/", (req, res) => {
  // return 사용
  return res.send("Hello");
});
  • app.post(path, callback)
// return 생략
app.post("/", (req, res) => res.send("Hello"));
  • app.listen(port, (callback))
const app = express();
app.listen(3000);
  • app.use((path), callback)
app.use("path", (req, res, next) => next(););

request

  • req.body()
    // js 형식의 정보({key:value})
    // express.urlencoded({extended: ture}) 미들웨어 필요
  • req.query()
  • req.params()
  • req.protocol()
    // http, https
  • req.path()
  • req.url()

response

  • res.send()
    // text, html 등을 전송
  • res.render()
    // view 파일에 object 형태로 정보 전송
  • res.end()
    // 연결 종료
  • res.redirect("/admin")
    // 해당 url로 이동

router

const router = express.Router();
  • router.get() --- (1)
  • router.post() --- (2)
  • router.route().get().post() --- (1), (2)를 한번에 쓰는 방법
profile
좋은 개발자, 좋은 사람

0개의 댓글