Eepress에 대한 기본 지식 --> 라우팅, 미들웨어, EJS
라우팅
ex) 게시판 주소와 게시판의 글을 클릭해서 나온 상세주소의 url은 서로 다름
--> 라우팅에 각각 여러가지 url을 설정
--> 이를 통해 각각의 url에 따라 다른 결과물을 보여줌
라우팅에 대한 예시
https://spartacodingclub.kr/online/webplus
https://spartacodingclub.kr/portfolio
두 주소는 같은 도메인 주소를 가지고 있지만 보여주는 페이지가 다름
--> url 주소의 뒷부분인 path 정보가 다르기 떄문
라우터가 path 정보에 따라 분기하는 방식
1) 도메인 주소만
app.get('/', (req, res) => {
res.send('Hello World!')
})
--> 해당 코드는 path가 '/'일 때의 분기(즉, 도메인 주소만 적었을 때의 분기)
--> 'hello world'를 송신
2) 도메인 주소 + path
app.get('/hi', (req, res) => {
res.send('Hi. This is express router')
})
해당 코드는 path가 '/hi'일 경우의 분기 (즉, 도메인 주소 뒤에 /hi를 붙여줬을 때의 분기)
--> 'Hi. This is express router'를 송신
http method --> 라우터의 경로구분에 영향을 미치는 또다른 요소
--> 우리가 해당 주소를 요청하는 방식에 대한 부분
-> 같은 주소라도 어떤 방식으로 요청하는지에 따라 응답을 다르게 할 수 있다.
--> get, post, delete 등등
간단한 예시)
get --> 해당 리소스 정보를 받겠다.
일반 브라우저에서 요청하는 행위가 다 get 요청으로 되어 있음
post, put --> 해당 리소스에 해당하는 정보를 새롭게 추가하겠다. 또는 변경하겠다
delete --> 해당 리소스에 해당하는 정보를 지우겠다.
등등
http method 참고 (자세한 설명) : https://developer.mozilla.org/ko/docs/Web/HTTP/Methods
페이지의 이동
app.get('/', (req, res) => {
res.send('Hello World! <a href="/hi">Say Hi!</a>')
})
<a href="/hi">Say Hi!</a>
--> 이 부분이 링크로 나타남
미들웨어
--> 웹 프레임워크의 특징
--> 반복해서 자주해야하는 동작들을 간단하게 미리 처리 할 수 있도록 해줌
EJS
일반적으로 html의 경우 고정된 탬플릿 --> 만들어진 대로만 나타남
but
로그인, 로그아웃의 여부, 특정 조건(그 날 날씨에 따라 다른 이미지 보여주는 등) 와 같이 특정 상황에 따라 다른 화면을 보여줘야한는 경우가 생길 수 있음
--> 그 때 특정 상황에 맞게 html(고정된 탬플릿)에 조금씩 변화를 줄 수 있는 것이 EJS임
Author And Source
이 문제에 관하여(Eepress에 대한 기본 지식 --> 라우팅, 미들웨어, EJS), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@odesay97/Eepress에-대한-기본-지식-라우팅-미들웨어-EJS저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)