■ Front-End ■/Node.js

[Node.js] querystring 모듈을 사용하여 쿼리스트링 파싱

한길(One Way) 2023. 2. 26. 05:51
Node.js는 빠르고 쉬우며 확장 가능한 JavaScript 런타임이다.

 

1. 개요

Node.js에서 querystring 모듈을 사용하여 URL 주소를 파싱하여 정보를 표시하는 예제이다.

2. 사용법

먼저 querystring 모듈을 선언한다.

var querystring = require('querystring');

 

querystring 모듈의 stringify() 함수를 사용하여 JSON을 쿼리스트링으로 변환할 수 있다. querystring 모듈의 stringify() 함수를 사용하여 JSON을 쿼리스트링으로 변환할 때 2번째, 3번째의 파라미터에 값을 주면 쿼리스트링의 '&' 구분자 대신 2번째 파라미터를 사용하고, '=' 구분자 대신 3번째 파라미터를 사용한다.

var q1 = querystring.stringify({..JSON...});
var q2 = querystring.stringify({..JSON...} , ';', ':');

querystring 모듈의 pase() 함수를 사용하면 쿼리스트링을 파싱할 수 있다.

var obj = querystring.parse("name=oneway&hobby=reading&hobby=cooking&passwd=1234");

3. 예제

querystring의 사용법을 기반으로 작성한 예제 코드이다.

/** querystring */
 
var querystring = require('querystring');
 
var q1 = querystring.stringify({
        name : 'oneway',
        hobby : [ 'reading', 'cooking' ],
        passwd : '1234'
});
console.log("q1 = " + q1);
 
var obj1 = querystring.parse("name=oneway&hobby=reading&hobby=cooking&passwd=1234");
console.log(obj1);
console.log(JSON.stringify(obj1));
 

실행 결과

 
q1 = name=oneway&hobby=reading&hobby=cooking&passwd=1234
[Object: null prototype] {
  name: 'oneway',
  hobby: [ 'reading', 'cooking' ],
  passwd: '1234'
}
{"name":"oneway","hobby":["reading","cooking"],"passwd":"1234"}

4. 참조 URL

728x90