티스토리 뷰

Development/Node.js

Node.js - url

ShinyOcean 2021. 6. 29. 06:02

 

 

안녕하세요 :)

 

이번 포스팅의 주제는 URL입니다.

웹 프로그래밍에서 빼먹으면 안되는 가장큰 주제이고 드디어 node.js를 다루는 카테고리에서 자바스크립트가 아닌 노드에 대해 조금은 언어적으로 다루어보는 포스팅이 될것 같습니다.

 

흔히 우리가 인터넷을 이용하면 많이 들어봣을 url은 웹사이트의 주소를 이야기 합니다. 그안에는 프로토콜정보, 도메인네임, 쿼리 등 여러 정보가 포함되어있습니다.

 

이번 포스팅에서는 url을 node.js의 객체로서 반환하여 다루어 볼것이고 프로그램 코드 내에서 url의 각 정보에 어떻게 접근하고 어떻게 출력하는지 다루어 보겠습니다

 

예제로 사용할 url은 다음과 같습니다.

 

 

"구글 검색창에 nodejs라 검색했을때 나오는 url"을 프로그램을 이용해서 해석해보겠습니다.

 

먼저 url을 다루기위해 내장모듈인 url과 querystring을 포함시켜주겠습니다

 

 

다음으로 url을 var 타입 즉 변수값으로 선언해주어도 되지만 이번 포스팅에서 해당 값에 변화를 줄 일은 아마 없을것이기 때문에 저는 상수인 const타입으로 선언해서 초기화 해주겠습니다.

 

url객체로 문자열인풋을 변환해주는 함수는 url모듈내에 있는 parse함수 입니다. 제가 사용하는 에디터에서는 사용을 추천하지 않는다는 의미로 취소선이 그어져있지만 실행에는 무방합니다 (왜 비추천한다하는지는 잘 모르겠습니다. 담에 좀더 알아볼께요)

 

 

그리고 콘솔에 해당 url 객체에 대한 정보를 출력해보면 다음과 같습니다.

 

 

위의 출력된 내용을 훑어보면 해당 url의 프로토콜은 https, host와 hostname 은 www.google.com  그리고 검색 키워드와 명령(쿼리)값, 환경변수와 값, 링크값등 여러 정보를 알수 있습니다.

 

그렇다면 이들중 우리는 쿼리에 집중을 해보고싶은데, 이때 사용하는 내장모듈이 querystring입니다. url중 쿼리에 해당하는 스트링부분을 객체화 시켜줄수 있는 모듈인데요 그 과정은 다음과 같습니다.

 

 

파라미터를 의미하는 param이라는 변수명으로 해당url의 쿼리속성만 querysting의 parse함수를 통해 객체로 만들어 주었습니다 이후 콘솔을통해 정보를 확인해보면 다음과 같습니다.

 

제가 검색한 nodejs 라는 검색어가 쿼리의 q부분에 위치하고 있습니다.

 

다음은 url 객체를 스트링으로 만들어 취급하는경우도 앞으로 많이 겪게 될것이니 연습해보겠습니다. url.format 함수를 사용하고 코드와 결과는 다음과 같습니다.

 

<변환전 타입출력 , 스트링으로 타입변환, 변환후 타입출력, 변환후 변수출력>
<결과>

 

'Development > Node.js' 카테고리의 다른 글

Node.js - file  (0) 2021.06.30
Node.js - event  (0) 2021.06.30
Node.js - 배열과 콜백함수  (0) 2021.06.29
Node.js - 외장모듈, 내장모듈  (0) 2021.06.25
Node.js - json, 모듈 분기  (1) 2021.06.25
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/08   »
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31
글 보관함