반응형
Node.js 쿼리스트링(Query String)
생활코딩 Node.js를 이용해 웹애플리케이션 만들기의 내용을 정리해본다.
쿼리스트링(query string)은 어플리케이션에 정보를 전달할때, URL 사용되는 국제표준 방식이다.
이전 포스팅에서 언급했던 것처럼 아래와 같은 각 URL은
- http://a.com/login
- http://a.com/home
- http://a.com/topic
언제나 같은 페이지를 보여주는 한계점이 있다.
이는 쿼리스트링을 이용하여 개선할 수 있으며, 아래와 같이 id 값을 다르게 입력함으로써 다른 결과를 보여줄 수 있다.
- http://a.com/topic?id=1
- http://a.com/topic?id=2
id=1과 같은 부분을 쿼리스트링이라고 한다.
참조 : http://expressjs.com/ko/4x/api.html#req.query
<소스코드예제>
var express = require('express');
var app = express();
app.locals.pretty = true;
app.get('/topic', function(req, res){
var topics = [
'Javascript is...',
'Nodejs is...',
'Express is...'
];
var output = `
<a href="/topic?id=0">Javascript</a><br>
<a href="/topic?id=1">Nodejs</a><br>
<a href="/topic?id=2">Express</a><br>
${topics[req.query.id]}
`
res.send(output);
});
Semantic URL
쿼리스트링이 아닌 좀 더 직관적으로 사용하는 Semantic URL에 대해 알아보자.
위에서 사용했던 http://a.com/topic?id=1 방식이 아닌 http://a.com/topic/1로 접속하는 방식이다.
var express = require('express');
var app = express();
app.locals.pretty = true;
app.get('/topic/:id', function(req, res){
var topics = [
'Javascript is...',
'Nodejs is...',
'Express is...'
];
var output = `
<a href="/topic/0">Javascript</a><br>
<a href="/topic/1">Nodejs</a><br>
<a href="/topic/2">Express</a><br>
${topics[req.params.id]}
`
res.send(output);
});
반응형
'Web > Nodejs' 카테고리의 다른 글
Node.js (Supervisor) (0) | 2020.04.04 |
---|---|
Node.js (Express, 템플릿 엔진) (0) | 2020.01.11 |
Node.js (Express) (0) | 2020.01.08 |
Node.js (0) | 2020.01.06 |