■ Front-End ■/Node.js

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

한길(One Way) 2023. 2. 26.
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

댓글