일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 정처기 필기
- 탈중앙화
- aws lambda
- amazon s3 트리거
- 정처기
- splunk db connect
- web security academy
- web3
- web3 보안
- 오블완
- metacodem
- AWS SSM
- ELB
- AWS CLI
- 메타코드
- 정보처리기사
- aws 트리거
- systems manager
- 스마트컨트랙트
- Path Traversal
- metacode
- Session Manager
- web shell
- 블록체인
- File Upload
- 정처기필기
- 티스토리챌린지
- 스마트 컨트랙트
- 보안 그룹
- 메타코드M
- Today
- Total
min8282
[Node.js] 내장 모듈(path, url, searchParams) 본문
os 모듈
노드가 제공하는 내장 모듈을 require로 사용.
- 내장 모듈은 경로 없이 이름만 기재 가능
os 모듈 메서드
os.arch(): process.arch와 동일
os.platform(): process.platform과 동일
os.type(): 운영체제의 종류
os.uptime(): 운영체제 부팅 이후 경고 시간(초). process.uptime()은 노드의 실행 시간
나머진 알아서
path
폴더와 파일의 경로를 쉽게 조작하도록 도와주는 모듈
- path.sep: 경로 구분자 windows는 \, POSIX는 /
- path.delimeter - 나중에
- path.dirname(경로): 파일이 위치한 폴더 경로
- path.extname(경로): 파일의 확장자
- path.basename(경로, 확장자): 파일 이름(확장자 포함), 두 번째 인자에 파일의 확장자를 넣으면 확장자 제외 가능
- path.parse(경로): 파일의 경로를 root, dir, base, ext, name으로 분리
- path.format(객체): path.parse()한 객체를 파일 경로로 합침
- path.normalize(경로): \나 /를 실수로 여러 번 사용했거나 혼용했을 때 정상적인 경로로 변환해줌
- path.isAbsolute(경로): 파일의 경로가 절대경로인지 상대경로인지 true or false로 알려줌
- path.relative(기준경로, 비교경로): 첫 번째 경로에서 두 번째 경로로 가는 방법을 알려줌
- path.join(경로, .. .): 여러 인자로 넣은 여러 경로를 하나의 경로로 연결. 상대 경로인 ..(부모 dir)과 .(현재 위치)등도 처리
- path.resolve(경로, ...): path.join()과 비슷하지만, /를 만나면 절대경로로 인식해서 앞의 경로를 무시하고 연결
join과 resolve의 차이
- .resolve()는 /를 절대경로로 처리, .join()은 상대경로로 처리
- 상대경로: 현재 파일 기준. 같은 경로 = . , 한 단계 상위(부모) 경로 = ..
- 절대 경로는 루트 폴더나 노드 프로세스가 실행되는 위치가 기준
path.join('/a', '/b', 'c'); /* 결과: /a/b/c */
path.resolve('/a', '/b', 'c'); /* 결과: /b/c */
url 모듈
인터넷 주소를 쉽게 조작하도록 도와주는 모듈
- url 처리의 두 가지 방식(WHATWG 방식 vs 기존 노드 방식) 중 요즘은 WHATWG 방식만 사용
WHATWG 주소 체계 - 포트 번호가 없는 경우도 있음 -> 이건 뒤에서 설명
url은 노드 내장 객체이기도 해서 require 필요 없음
new URL(주소)
- url 주소를 부분별로 분해해서 origin, protocol, username, host, searchParams 등 속성을 포함하는 객체를 생성
url.format(object)
- 분해된 url 객체를 다시 원래 상태로 조립
searchParams(URL 모듈 속성 중 하나임)
- WHATWG의 URL 생성자로 만든 주소 객체에 포함된 객체
- URL 주소에서 search 부분(쿼리스트링)을 다루기 위한 객체
쿼리스트링은 보통 주소를 통해 데이터를 전달할 때 사용
- '?'로 시작해서, 그 뒤에 '키=값' 형식으로 데이터를 전달
- 여러 키가 있을 경우 '&'로 구분
.getAll(key)
- 키에 해당하는 모든 값들을 가져옴.
- category 키에는 두 가지 값, 즉 node.js와 javascript의 값이 들어 있다.
- .get(key): 키에 해당하는 첫 번째 값만 가져옴
- .has(key): 해당 키가 있는지 없는지를 검사
- .keys(): searchParams의 모든 키를 반복기 객체로 가져옴
- .values(): searchParams의 모든 값을 반복기 객체로 가져옴
- .append(key, value): 해당 키를 추가. 같은 키의 값이 있다면 유지하고 하나 더 추가
- .set(key, val): append와 비슷하지만 같은 키의 값등를 모두 지우고 새로 추가
- .delete(key): 해당 키를 제거
- .toString(): 조작한 searchParams 객체를 다시 문자열로 만듦. 이 문자열을 search에 대입하면 주소 객체에 반영됨
const queryString = searchParams.toString();
// e.g. id가 'admin', password가 '123123'일 경우 url
// http://www.loginPage.com/?id=admin&password=123123
'Dev > Node.js' 카테고리의 다른 글
Cannot set headers after they are sent to the client 오류 (0) | 2024.04.30 |
---|---|
[Node.js] 10 - 노드 내장 객체 - console, process.env, nextTick (2) | 2024.04.27 |
[Node.js] 09 - CommonJS & ECMAScripts Module (0) | 2024.04.22 |
[Node.js] 08 - npm(Node Package Manager) (2) | 2024.04.22 |
[Node.js] 07 - https와 http2 (0) | 2024.04.22 |