(15) express 모듈 사용-⑥ 쿼리스트링
http://a.com/index
http://a.com/login
http://a.com/topic
login이라는 하나의 라우터(path)로 아이디값 즉 쿼리스트링을 다르게 줌으로써 다른 결과를 나타낼 수 있다.
http://a.com/login?id=1
http://a.com/login?id=2
http://a.com/login?id=3
http: 프로토콜
a.com: 도메인 네임
/login: path
id=1: query string(쿼리스트링)
http://a.com/login : url
http://a.com/login?id=1 :uri
===========================================================================
<app.js>
app.get('/info',function(req, res){
res.send(req.query.id);
});
<description>
req.query.id (요청객체.쿼리스트링.name값) // 여기서 name=id
127.0.0.1:3000/info?id=success87 로 접근시 (<< url에서 쿼리스트링: id=success87)
===========================================================================
url: 127.0.0.1:3000/info?id=success87&name=Sean 으로 접근시
Sean, success87이 화면에 출력된다.
127.0.0.1:3000/info 으로 접근할 경우에는 undefined, undefined
마찬가지로 127.0.0.1:3000/info?id=success87 으로만 접근하면 undefined,success87 가 출력된다.
위에서 보다시피 url로 접근시 id와 name의 쿼리스트링 위치(순서)는 문제가 되지 않는다.
주의할 것!
그렇다면 만약 app.js에서 주석처리되어있는 위의 로직을 해제한다면?
생각한대로 url로 접근시
정상적으로 로직이 전부 실행되지는 않는다.
로직상 가장 위에 있는 것만 응답객체에 실어서 보내지고 그다음껀 보내지지 않는다.
출처: https://sourceflower.tistory.com/15?category=561762 [소스플로우]
'JavaScript BackEnd > Node.js, Express' 카테고리의 다른 글
(19) 데이터 전송 (GET 방식) (0) | 2019.04.03 |
---|---|
(18) GET vs POST (0) | 2019.04.03 |
(17) semantic url (의미론적 url) vs 쿼리스트링 방식 (0) | 2019.04.03 |
(16) express 모듈 사용-⑦ 쿼리스트링 응용 (0) | 2019.04.03 |
(14) express 모듈 사용-⑤ 템플릿 엔진: jade의 문법 (0) | 2019.04.03 |
(13) express 모듈 사용-④ Intro. 템플릿 엔진 (0) | 2019.04.03 |
(12) express 모듈 사용-③ 정적 웹페이지 vs 동적 웹페이지 (0) | 2019.04.03 |
(11) express 모듈 사용-② 정적 파일 서비스 (0) | 2019.04.03 |